php の Get_cfg_var() と ini_get() はどちらも php.ini のオプションの設定値を取得するための関数であり、どちらの関数も使用でき、得られる結果は同じです。
ただし、get_cfg_var() と ini_get() の間にはいくつかの違いがあり、それについてこの記事で説明します。
これら 2 つの関数の違いについて説明する前に、まずその意味と使用法を理解しましょう。
ini_get()の使い方については、昨日のブログ記事「php.iniの変数値を取得するini_getの使い方」を既に書いているので、ここでは詳しく説明しません。
以下では主に get_cfg_var() 関数について説明します。
get_cfg_var
PHP 設定オプションの値を取得します。
構文: string get_cfg_var(string varname);
戻り値: String
内容の説明: 現在の PHP 構成オプション varname が正しく取得された場合、変数の値が返されます。失敗した場合は false を返します。
これら 2 つの関数の違いについて話しましょう
実際、これら 2 つの関数の違いは非常に明確で、理解し、学習し、使用するのが簡単です。
get_cfg_var(): 取得される値は設定ファイル内の値です
ini_get(): 取得される現在の値
例:
ini_set('SMTP', '192.160.0.24'); // 現在の値を変更しますSMTP の
print get_cfg_var('SMTP'); // localhost に戻ります
print ini_get('SMTP'); // 192.160.0.24 を返します
/*
php.ini には次の設定:
display_errors = On
register_globals = Off
post_max_size = 8M
*/
echo 'display_errors = ' .ini_get('display_errors') . "n";
echo 'register_globals = ' . "n" ;
echo 'post_max_size = ' .ini_get('post_max_size') . "n";//POST 送信コンテンツの制限:
echo 'post_max_size+1 = ' . (ini_get('post_max_size') n";
echo 'allow_url_fopen = ' . (ini_get('allow_url_fopen')) . "n";// URL を使用してファイルを開きます:
?>
出力:
display_errors = 1
register_globals = 0//私のマシンでは何もありませんpost_max_size = 8M
post_max_size+1 = 9
allow_url_fopen = 1
code
/*
php.ini には次の設定が含まれています:
display_errors = On
register_globals = Off
post_ max_size = 8M
*/
echo 'display_errors = ' .get_cfg_var('display_errors') . "n";
echo 'register_globals' . "n";
echo 'post_max_size = ' . ' post_max_size') . "n";//POST 送信コンテンツの制限:
echo 'post_max_size+1 = ' (get_cfg_var('post_max_size')+1) . "n";
echo 'allow_url_fopen = ' . 'allow_url_fopen')) . "n";// URL を使用してファイルを開きます:
?>
output
display_errors = 1
register_globals =post_max_size = 8M
post_max_size+1 = 9
allow_url_fopen = 1
ここで、ini_get_all() 関数について説明します。この関数は、PHP 環境変数全体を配列の形式で返しますが、その使用法も非常に簡単です。
例:
$inis = ini_get_all();
?>
出力:
[allow_call_time_pass_reference] => Array
([グローバル値] => 1
[ローカル値] => 1
[アクセス] => 6
)
[allow_url_fopen] => 配列
(
[グローバル値] => 1
[ローカル値] => 1
[アクセス] => 7
)
…
)