PHP 8.3.4 Released!

get_cfg_var

(PHP 4, PHP 5, PHP 7, PHP 8)

get_cfg_varPHP 設定オプションの値を取得する

説明

get_cfg_var(string $option): string|array|false

PHP の設定オプション option の値を取得します。

この関数は、 PHP がコンパイルされた際にセットされた設定情報や Apache の設定ファイルから読んだ設定情報は返しません。

システムが 設定ファイル を使用しているかどうかを確認するには、cfg_file_path の設定値を取得してみてください。 この値が利用可能なら、設定ファイルが使用されています。

パラメータ

option

設定オプションの名前。

戻り値

option で指定された PHP 設定オプションの現在の値を返し、 エラーの場合は false を返します。

参考

add a note

User Contributed Notes 6 notes

up
20
surfchen at gmail dot com
17 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.]
up
8
gabriel b
10 years ago
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.
up
2
sinus at sinpi dot net
4 years ago
Boolean-like values are evaluated as follows: "true", "on", "yes" evaluate to "1" (string 1), while "false", "off", "no" evaluate to "" (empty string).
up
3
tbrix13 at uzitech dot com
9 years ago
keep in mind get_cfg_var() returns a string(1) '1' for the value: On

<?php
//in php.ini
//A = On

$A1 = get_cfg_var("A") === "On";
$A2 = get_cfg_var("A") === 1;
$A3 = get_cfg_var("A") === "1";

//$A1 is false
//$A2 is false
//$A3 is true
?>
up
3
techno dot rahul1988 at gmail dot com
9 years ago
The difference between ini_get() and get_cfg_var() is as follows:
@) ini_get(): returns the current value in .htaccess or as defined in PHP_INI_USER or PHP_INI_PERDIR
@) get_cfg_var: returns the values defined in the php.ini
up
-10
Stephen
17 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.
To Top