Вопрос по php – Как изменить путь к php.ini в версии PHP CLI

23

Php, который работает на веб-сервере и в версии CLI, не использует один и тот же файл php.ini. Если я сделаю командуphp --iniпоказывай это

Configuration File (php.ini) Path: C:\Windows
Loaded Configuration File:         C:\wamp\bin\php\php5.3.8\php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed:      (none)

в то время как моя веб-версия использует php.ini вC:\wamp\bin\apache\Apache2.2.21\bin\php.ini, Это, вероятно, очень распространено для людей, использующих Wamp.

Как изменить загруженный файл конфигурации для чтения изC:\wamp\bin\apache\Apache2.2.21\bin\php.ini поэтому мне не нужно поддерживать две разные версии php.ini?

Ваш Ответ

4   ответа
1

пытаясь сделать именно то, что задает ваш вопрос. Не могу это сделать. Я сдался и скопировал этот php.ini в C: \ Windows и изменил свою переменную ENV & quot; PHPRC & quot; в C: \ Windows (и в httpd.conf). Таким образом, и мой CLI php, и Apach php e используют один и тот же файл. Я не смог получить "php -m" чтобы отобразить модули, которые я загрузил в свой php.ini на всю жизнь, пока я не сделал это изменение ...

Error: User Rate Limit Exceeded
18

http://php.net/configuration.file:

php.ini is searched for in these locations (in order):

SAPI module specific location (PHPIniDir directive in Apache 2, -c command line option in CGI and CLI, php_ini parameter in NSAPI, PHP_INI_PATH environment variable in THTTPD) The PHPRC environment variable. Before PHP 5.2.0, this was checked after the registry key mentioned below. As of PHP 5.2.0, the location of the php.ini file can be set for different versions of PHP. The following registry keys are examined in order: [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y.z], [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y] and [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x], where x, y and z mean the PHP major, minor and release versions. If there is a value for IniFilePath in any of these keys, the first one found will be used as the location of the php.ini (Windows only). [HKEY_LOCAL_MACHINE\SOFTWARE\PHP], value of IniFilePath (Windows only). Current working directory (except CLI). The web server's directory (for SAPI modules), or directory of PHP (otherwise in Windows). Windows directory (C:\windows or C:\winnt) (for Windows), or --with-config-file-path compile time option.

Для CLI, аш лучший ыбор, ероятно, либо устаноить$PHPRC переменная среды для учетной записи, которая будет ыполнять сценарии, или перекомпилироать PHP с другим--with-config-file-path настройка конфигурации.

Вы также можете переопределить каталог поиска php.ini для каждого исполнения, указа-c опция при ызое PHP:

> php --help
Usage: php [options] [-f]  [--] [args...]
...
  -c | Look for php.ini file in this directory

Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded Sufendy
0

phpinfo() функция с обеих сторон

Веб-сервер и CLI и узнать точное местоположение вашегоphp.ini файл для обеих сторон

и поддерживать только эти файлы

Error: User Rate Limit Exceeded Sufendy
8

указывающую на тот же php.ini, что и тот, который использует Apache, я работал в Ubuntu

export PHPRC=/etc/php5/apache2/php.ini

Или поместите его в $ HOME / .bashrc для импорта при каждом запуске cli

Похожие вопросы