Web aym.pekori.to

ini_get

(PHP 4, PHP 5)

ini_get -- 設定オプションの値を得る

説明

string ini_get ( string varname )

成功時に設定オプションの値を返し、失敗時(例えば存在しない値等)の場合に 空の文字列を返します。

boolean 値を探す場合: offというbooleanのini値は空文字列または"0"として返されます。 一方でonのini値は"1"として返されます。

メモリサイズの値を探す場合: upload_max_filesize のようなメモリサイズの値の場合、 php.ini上で省略形で格納されています。 ini_get()php.iniに格納されている値を そのままの形式で返します。整数表現に変換したりはしません。 これらの値に通常の算術的な関数を施すと予期しない結果を 得てしまいます。以下では、省略形の表記から本来のバイト数に変換する PHP ソースのひとつの例を示しています。

例 1. ini_get() のいくつかの例

<?php
/*
php.ini の設定は以下のようになっている:

display_errors = On
register_globals = Off
post_max_size = 8M
*/

echo 'display_errors = ' . ini_get('display_errors') . "\n";
echo
'register_globals = ' . ini_get('register_globals') . "\n";
echo
'post_max_size = ' . ini_get('post_max_size') . "\n";
echo
'post_max_size+1 = ' . (ini_get('post_max_size')+1) . "\n";
echo
'post_max_size in bytes = ' . return_bytes(ini_get('post_max_size'));

function
return_bytes($val) {
    
$val = trim($val);
    
$last = strtolower($val{strlen($val)-1});
    switch(
$last) {
        
// 'G' は、PHP 5.1.0 より有効となる
        
case 'g':
            
$val *= 1024;
        case
'm':
            
$val *= 1024;
        case
'k':
            
$val *= 1024;
    }

    return
$val;
}

?>

このスクリプトは以下のような出力をします:

display_errors = 1
register_globals = 0
post_max_size = 8M
post_max_size+1 = 9
post_max_size in bytes = 8388608

get_cfg_var(), ini_get_all(), ini_restore(), および ini_set() も参照してください。