Как мы знаем, для веба и консоли используются разные ini-файлы PHP. Например, если я запускаю ini_get('max_execution_time') из консольного скрипта, он вернет 0, потому что консольные скрипты обычно не имеют тайм-аута. Но если я запущу тот же код из Интернета, он вместо этого вернет значение, которое мы установили для нашего веб-сайта.
Я хочу запустить приведенный ниже код из консольного скрипта:
ini_get('max_execution_time')
Однако это вернет мне значение как 0, потому что PHP использует другой файл php.ini для консоли. Что я хочу, так это то, что когда я запускаю приведенный выше код, я хочу, чтобы он возвращал значение, которое будет установлено из php.ini, которое должно быть для веб-консоли НЕ.
Причина, по которой мне нужно значение web php.ini для разных значений, заключается в том, что я создаю консольный скрипт, который будет проверять значения и уведомлять меня по электронной почте, если какой-либо параметр php.ini не подходит для веб-приложения.
К вашему сведению, я использую фреймворк Laravel.
Спасибо за помощь.






Вы можете использовать echo php_ini_loaded_file(); из Интернета, чтобы найти имя INI-файла веб/apache2. В моем случае это /usr/локальные/зенд/и т.д./php.ini.
Затем в вашем приложении CLI вы можете преобразовать ini-файл в массив, который можно использовать для извлечения необходимых данных.
<?php
$config = parse_ini_file('/usr/local/zend/etc/php.ini');
// Ouput of `var_dump($config);`
array (size=118)
'engine' => string '1' (length=1)
'short_open_tag' => string '1' (length=1)
'precision' => string '14' (length=2)
'output_buffering' => string '4096' (length=4)
'zlib.output_compression' => string '' (length=0)
'implicit_flush' => string '' (length=0)
'unserialize_callback_func' => string '' (length=0)
'serialize_precision' => string '-1' (length=2)
'disable_functions' => string '' (length=0)
'disable_classes' => string '' (length=0)
'realpath_cache_size' => string '256k' (length=4)
'zend.enable_gc' => string '1' (length=1)
'expose_php' => string '1' (length=1)
'max_execution_time' => string '500' (length=3)
'max_input_time' => string '60' (length=2)
'memory_limit' => string '256M' (length=4)
'error_reporting' => string '32767' (length=5)
'display_errors' => string '1' (length=1)
'display_startup_errors' => string '1' (length=1)
...
echo $config['max_execution_time']; // 500