settings with the value of 'yes' will be returned as '1'.
<?php
//#my ini file
//A = 1
//B = any-thing
//C = yes
//D = /some/path/file
get_cfg_var('A') // returns '1'
get_cfg_var('B') // returns 'any-thing'
get_cfg_var('C') // returns '1', wait, why?
get_cfg_var('D') // returns '/some/path/file'
?>
I had my setting = yes and then checked it as ==="yes" for epic fail.
get_cfg_var
(PHP 4, PHP 5)
get_cfg_var — Извлекает значение настройки конфигурации PHP
Описание
string get_cfg_var
( string
$option
)
Извлекает значение настройки конфигурации PHP option.
Функция не вернет никакой информации, если PHP скомпилирован из конфигурационного файла Apache.
Удостовериться в том, что система использует файл конфигурации, попробуйте получить значение настройки конфигурации cfg_file_path. Если эта настройка доступна, это значит, что файл конфигурации используется.
Список параметров
-
option -
Имя настройки конфигурации.
Возвращаемые значения
Возвращает текущее значение настройки конфигурации PHP
option, или FALSE в случае ошибки.
Список изменений
| Версия | Описание |
|---|---|
| 5.3.0 | get_cfg_var() изменена, чтобы иметь возможность возвращать ini настройки содержащие массивы. |
Смотрите также
- ini_get() - Получает значение настройки конфигурации
- ini_get_all() - Получение всех настроек конфигурации
gabriel b ¶
23 days ago
surfchen at gmail dot com ¶
6 years ago
get_cfg_var returns the value from php.ini directly,while the ini_get returns the runtime config value. I have tried it on PHP 5.1.6
[EDIT by danbrown AT php DOT net: The author of this note means that ini_get() will return values set by ini_set(), .htaccess, a local php.ini file, and other functions at runtime. Conversely, get_cfg_var() will return strictly the server php.ini.]
Stephen ¶
6 years ago
Regarding the statement by the earlier poster that:
"Unfortunately, you almost never want to know the original value in the config file. Instead, you want to know the value currently in effect."
I have found this useful for changing the error reporting levels for a few specific pages while testing. I turn on all error_reporting while testing, but for a few pages I want to turn off notices. So, I put this at the top of the page:
<?php
error_reporting(8183);
?>
and this at the bottom:
<?php
error_reporting(get_cfg_var('error_reporting'));
?>
to put it back to whatever default I had at the time.
