関数の概要
get_cfg_var は、PHPスクリプト内で現在の php.ini 設定値を取得するための関数です。PHPの実行環境で有効になっている設定やパス、メモリ制限など、環境設定を動的に確認したい時に便利です。サーバー環境を調査したり、動作条件を制御したりする際に役立ちます。
パラメータの説明
string $option
取得したいphp.ini設定の名前を文字列で指定します。例えば、memory_limitやupload_max_filesizeなどが該当します。
戻り値
指定した設定値を文字列で返します。設定が存在しない場合は FALSE を返します。なお、いくつかの設定は起動時に読み込まれるため、実行時に変更したものは反映されないことがあります。
使用例
基本的な使い方
<?php
// メモリ制限の設定を取得
$memoryLimit = get_cfg_var('memory_limit');
echo 'memory_limit: ' . $memoryLimit;
?>
この例では、PHPのメモリ制限(memory_limit)を取得し、その値を表示しています。
ファイルアップロードの最大サイズを取得する
<?php
$uploadMaxFilesize = get_cfg_var('upload_max_filesize');
echo 'upload_max_filesize: ' . $uploadMaxFilesize;
?>
このコードはファイルアップロード時の最大ファイルサイズ設定を取得し、確認しています。
ディレクトリの一時保存先のパスを調べる
<?php
$tempDir = get_cfg_var('upload_tmp_dir');
if ($tempDir) {
echo '一時アップロードディレクトリ: ' . $tempDir;
} else {
echo '一時アップロードディレクトリの設定はありません。';
}
?>
アップロードされたファイルの一時保存先が設定されているかどうかを判定し、そのパスを表示します。設定されていない場合はメッセージを出します。
関連する関数
ini_get– 実行時に変更された設定値も含めて取得できるため、動的に取得したい場合に使います。php_ini_loaded_file– 現在読み込まれているphp.iniのファイルパスを取得します。ini_set– 実行中のスクリプトで設定値を変更する際に使用します。
まとめ
get_cfg_var はPHPの初期設定ファイル php.ini に設定されている値を取得する便利な関数です。環境設定の状態を確認したい場合などに役立ちますが、実行時に変更された値は取得できない点に注意が必要です。動的な設定値の確認は ini_get と併用することで、より正確な環境情報が得られます。ぜひ実務で活用してみてください。
