Как правильно использовать `.пользователь.ini ' - файл в PHP?

в моем рабочем каталоге у меня есть два файла:index.php и .user.ini:

.user.ini:

display_errors=on

; http://be2.php.net/manual/en/filter.configuration.php#ini.filter.default
;filter.default = "full_special_chars"

index.php:

<?php
//ini_set("display_errors", "on");

// Use `.user.ini` file:
// http://php.net/manual/en/configuration.file.per-user.php
echo "Setting for 'user_ini.filename': " . ini_get("user_ini.filename");
echo "nn";


// It takes up to five minutes, until `.user.ini` is re-read:
echo "Setting for 'user_ini.cache_ttl': " . ini_get("user_ini.cache_ttl");
echo "nn";

// http://php.net/manual/en/function.ini-get.php
echo "Setting for 'display_errors': " . ini_get("display_errors");
echo "nn";
echo "Setting for 'filter.default': " . ini_get("filter.default");
echo "nn";

// php -S localhost:8000
// http://localhost:8000/

используя вышеуказанные .user.ini-файл (в моем рабочем каталоге) я жду "Setting for 'display_errors': " имеющий значение on или 1, но он пуст.

как правильно изменить настройки с помощью .user.ini-файл?

под управлением php --ini результаты

Configuration File (php.ini) Path: /etc/php5/cli
Loaded Configuration File:         /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed:      /etc/php5/cli/conf.d/05-opcache.ini,
/etc/php5/cli/conf.d/10-pdo.ini,
/etc/php5/cli/conf.d/20-json.ini,
/etc/php5/cli/conf.d/20-readline.ini

, который не содержит мой .user.ini-файл.

явное добавление .user.ini-файл работает:

php --php-ini .user.ini index.php

но я хотел бы, чтобы он автоматически считывался при запуске скрипта из данной папки.

2 ответов


на документация Он говорит:

эти файлы обрабатываются только CGI / FastCGI SAPI

и

Если вы используете Apache, используйте .htaccess файлы для того же эффекта.

поэтому, если вы запускаете PHP как модуль Apache, из командной строки или с помощью встроенного сервера,.user.ini-файлы не обрабатываются.

чтобы узнать ваш сервер API, просто создайте PHP-скрипт с следующего содержания и назовите его в браузере:

<? phpinfo();

По данным http://php.net/manual/en/configuration.file.per-user.php

Регистрация user_ini.filename в основном php.ini чтобы убедиться, что он не пустой и он действительно разбирается. Если его значение пустое, PHP вообще не сканирует.

Смотрите также-Значение user_ini.cache_ttl

пожалуйста, взгляните на

php.net руководство

также проверьте этот вопрос загрузка a .пользователь.ini PHP conf файл с помощью PHP 5.4 внутренний сервер?