У меня есть две версии PHP на Windows Server — v5
а также v7
, Проблема в том, что PHP 7 пытается использовать php.ini
PHP 5:
$ php -v
PHP 7.0.2 (cli) (built: Jan 6 2016 12:59:59) ( NTS )
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies
$ php --ini
Configuration File (php.ini) Path: C:\Windows
Loaded Configuration File: D:\path\to\php5\php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
Как правильно установить php.ini
для PHP 7?
На следующей странице руководства обсуждается, как PHP находит свой файл конфигурации в Windows:
http://php.net/manual/en/configuration.file.php
Конкретное местоположение модуля SAPI (
PHPIniDir
директива в Apache 2, -c
опция командной строки в CGI и CLI,php_ini
параметр в NSAPI,
PHP_INI_PATH
переменная окружения в THTTPD)
PHPRC
среда
переменная. До PHP 5.2.0 это проверялось после ключа реестра
упомянуто ниже. Начиная с PHP 5.2.0, расположение файла php.ini может
быть установлен для разных версий PHP.Следующие ключи реестра проверяются по порядку:
[HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y.z]
,
[HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y]
а также
[HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x]
, гдеx
,y
а такжеz
имею в виду PHP
основные, второстепенные и выпускные версии. Если есть значение дляIniFilePath
в любом из этих ключей первый найденный будет использоваться как местоположение
php.ini (только для Windows).
[HKEY_LOCAL_MACHINE\SOFTWARE\PHP]
,
ценностьIniFilePath
(Только для Windows).Текущий рабочий каталог (кроме CLI).
Каталог веб-сервера (для модулей SAPI) или каталог
PHP (иначе в Windows).Каталог Windows (
C:\windows
или жеC:\winnt
)
(для Windows) или--with-config-file-path
опция времени компиляции.
Других решений пока нет …