Можно ли получить путь к файлу php.ini с помощью сценария php и сохранить этот путь в переменной? Я знаю, что могу вызвать phpinfo (), чтобы выяснить путь, но он печатает много информации, и мне нужен только путь к файлу php.ini и никакого вывода вообще. Заранее спасибо.
Конечно, есть две функции, связанные с тем, что вы хотели бы сделать. Первый именно то, что вы ищете, второй показывает большую картину, что может быть более одного INI-файла:
php_ini_loaded_file
php_ini_scanned_files
Кроме того, обратите внимание на разрыв с .user.ini файлами , они не отображаются ни в php_ini_scanned_files, ни phpinfo.
phpinfo
Это работает в командной строке, может также работать для CGI:
ob_start(); phpinfo(); if ( preg_match( '#>(.+)/php.ini#', ob_get_clean(), $matches ) ) { echo 'php.ini location: ' . trim( $matches[1] ) . '/php.ini'; }
Вы можете выполнить exec ("php -i | grep php.ini") и получить этот вывод.Или вы можете использовать outputbuffering (ob_start ()), запустить phpinfo (), получить содержимое outputbuffer (ob_get_contents ()) и выполнить поиск по нему (preg_match), чтобы найти файл php.ini ...