これらのモードは、ある PHP ディレクティブがいつどこで設定できるのかを表すものです。 マニュアルに記載されているすべてのディレクティブには、これらのモードのいずれかが指定されています。 たとえば、PHP スクリプト中で ini_set() で設定できるものもあれば php.ini や httpd.conf でなければ設定できないものもあります。
たとえば output_buffering は
PHP_INI_PERDIR なので、
ini_set() で設定することはできません。
一方 display_errors は
PHP_INI_ALL なのでどこででも設定でき、当然
ini_set() ででも設定できます。
| モード | 意味 |
|---|---|
PHP_INI_USER |
ユーザースクリプト (ini_set() などで) または Windows レジストリ で設定可能なエントリ。 .user.ini でも設定可能です。 |
PHP_INI_PERDIR |
php.ini、.htaccess、httpd.conf あるいは .user.ini で設定可能なエントリ |
PHP_INI_SYSTEM |
php.ini または httpd.confで設定可能なエントリ |
PHP_INI_ALL |
どこでも設定可能なエントリ |