Php/docs/phar.configuration
运行时配置
这些函数的行为受 php.ini 中的设置影响。
| 名字 | 默认 | 可修改范围 | 更新日志 |
|---|---|---|---|
| phar.readonly | "1" | PHP_INI_ALL | |
| phar.require_hash | "1" | PHP_INI_ALL | |
| phar.extract_list | "" | PHP_INI_ALL | Available from phar 1.1.0 to 1.2.3, removed in 2.0.0. |
| phar.cache_list | "" | PHP_INI_SYSTEM | Available from phar 2.0.0. |
这是配置指令的简短说明。
phar.readonlyboolThis option disables creation or modification of Phar archives using the
pharstream or Phar object's write support. This setting should always be enabled on production machines, as the phar extension's convenient write support could allow straightforward creation of a php-based virus when coupled with other common security vulnerabilities.Note:
This setting can only be unset in php.ini due to security reasons. If
phar.readonlyis disabled in php.ini, the user may enablephar.readonlyin a script or disable it later. Ifphar.readonlyis enabled in php.ini, a script may harmlessly "re-enable" the INI variable, but may not disable it.phar.require_hashboolThis option will force all opened Phar archives to contain some kind of signature (currently MD5, SHA1, SHA256 and SHA512 are supported), and will refuse to process any Phar archive that does not contain a signature.
Note:
This setting can only be unset in php.ini due to security reasons. If
phar.require_hashis disabled in php.ini, the user may enablephar.require_hashin a script or disable it later. Ifphar.require_hashis enabled in php.ini, a script may harmlessly "re-enable" the INI variable, but may not disable it.This setting does not affect reading plain tar files with the PharData class.
phar.extract_liststringThis INI setting has been removed as of phar 2.0.0
Allows mappings from a full path to a phar archive or its alias to the location of its extracted files. The format of the parameter is
name=archive,name2=archive2. This allows extraction of phar files to disk, and allows phar to act as a kind of mapper to extracted disk files. This is often done for performance reasons, or to assist with debugging a phar.Example #1 phar.extract_list usage example
in php.ini:phar.extract_list = archive=/full/path/to/archive/,arch2=/full/path/to/arch2<?phpinclude "phar://archive/content.php";include "phar://arch2/foo.php";?>phar.cache_liststringThis INI setting was added in phar 2.0.0
Allows mapping phar archives to be pre-parsed at web server startup, providing a performance improvement that brings running files out of a phar archive very close to the speed of running those files from a traditional disk-based installation.
Example #2 phar.cache_list usage example
in php.ini (windows): phar.cache_list =C:\path\to\phar1.phar;C:\path\to\phar2.phar in php.ini (unix): phar.cache_list =/path/to/phar1.phar:/path/to/phar2.phar