2008-09-21 4 views
3

Есть ли способ прочитать файл ini для конфигурации модуля?PHP parse configuration ini files

Например, я установил php-eaccelerator (http://eaccelerator.net), и он поместил файл eaccelerator.ini в /etc/php.d. Моя установка PHP не читала этот INI-файл, потому что «--with-config-file-scan- dir "не использовался при компиляции PHP Есть ли способ вручную указать путь к ini-файлу где-нибудь, чтобы PHP мог прочитать настройки модуля?

ответ

3

Это просто дикая догадка, но постарайтесь добавить все директивы от eaccelerator.ini в php.ini. Сначала создайте <?php phpinfo(); ?> и проверьте, где он находится.

Например, попробуйте следующее:

[eAccelerator] 
extension="eaccelerator.so" 
eaccelerator.shm_size="32" 
eaccelerator.cache_dir="/tmp" 
eaccelerator.enable="1" 
eaccelerator.optimizer="1" 
eaccelerator.check_mtime="1" 
eaccelerator.debug="0" 
eaccelerator.filter="" 
eaccelerator.shm_max="0" 
eaccelerator.shm_ttl="0" 
eaccelerator.shm_prune_period="0" 
eaccelerator.shm_only="0" 
eaccelerator.compress="1" 
eaccelerator.compress_level="9" 

Другая вещь, которую вы могли бы сделать, это установить все параметры во время выполнения с помощью ini_set(). Я не уверен, что это работает или насколько это эффективно. :) Я не знаком с eAccelerator, чтобы точно знать.

1

Стандартный способ в этом случае - скопировать соответствующие строки .ini в конец файла php.ini. В файле php.ini нет функции include.ini «include».

Вы не можете сделать это во время выполнения, так как расширение уже было инициализировано к тому времени.

0

Если вы используете Apache и mod-php, вы можете настроить/переопределить некоторые настройки php локально с помощью .htaccess file. Ваш веб-сервер должен «правильно разрешить» в главном файле конфигурации, чтобы вы могли локально локализовать эти параметры. По моему опыту, многие хостинговые компании позволят вам установить настройки php через htaccess.

(спасибо комментатора за указание это работает только с модом-PHP)

+0

Вы имеете в виду Apache и mod_php. Apache и PHP как (f) cgi игнорируют .htaccess, если вы не используете htscanner. – Till 2008-09-21 14:28:23