PATHを含むPHP開発では、非常に重要な構成項目であり、 include 、要求、その他のステートメントを使用するときにPHPがファイルを検索するディレクトリ順序を決定します。含まれるパスの合理的な管理は、コードの保守性を改善するだけでなく、ファイル参照エラーを回避できます。この記事では、get_include_path()関数とget_cfg_var()関数を使用して、PHP構成で含まれるパスを取得および管理し、特定のアプリケーションメソッドを実証する方法を紹介します。
PHPの含まれるパスは、通常、セミコロン(Windowsの下)またはコロン(Unix/Linuxの下)で区切られた複数のパスで構成された文字列です。デフォルトでは、PHPの含まれるパスには、現在のディレクトリ( 。 )、システムディレクトリ、またはカスタムディレクトリが含まれている場合があります。付属のパスを調整することにより、プログラマーはコードファイルのロードをより柔軟に管理できます。
get_include_path()は、現在のスクリプトランタイムのインクルードパスを取得するPHPビルトイン関数です。構成ファイルのinclude_path値と同じ形式の文字列を返します。
例:
<?php
echo get_include_path();
?>
実行後、現在含まれているパス文字列が出力されます。
get_cfg_var()関数は、php構成ファイル(php.ini)で構成アイテムの元の値を取得するために使用されます。 ini_get()に似ていますが、 get_cfg_var()はphp.iniの値のみを返し、ランタイムの変更の影響を受けません。
たとえば、php.iniでinclude_path構成を取得するには、次のように書くことができます。
<?php
$path = get_cfg_var('include_path');
echo $path;
?>
get_cfg_var( 'include_path')を介してphp.iniファイルのパスを含むデフォルトを知ることができ、 get_include_path()は、現在の実行環境のインクルードパスを反映しています( set_include_path( )などの関数によって動的に変更された可能性があります。これら2つを組み合わせることで、開発者が含まれるパスの変更をよりよく理解し、管理することができます。
例えば:
<?php
// 得るphp.iniデフォルトinclude_path
$defaultPath = get_cfg_var('include_path');
// 得る当前脚本运行时的include_path
$currentPath = get_include_path();
echo "PHP配置文件デフォルトinclude_path:\n";
echo $defaultPath . "\n\n";
echo "現在の動作環境include_path:\n";
echo $currentPath . "\n";
?>
新しいInclude Path /var/www/gitbox.net/includesを元のベースで追加し、他のパスを変更せずに追加するとします。
<?php
// 得る当前包含路径
$currentPath = get_include_path();
// 追加する新しいパス
$newPath = '/var/www/gitbox.net/includes';
// 新しいパスが既に存在するかどうかを判断します
if (strpos($currentPath, $newPath) === false) {
// そうでない場合は、追加してください,Delimiterはシステムに従って自動的に設定されます
$separator = PATH_SEPARATOR; // Windowsはい; Unix/Linuxはい:
$newIncludePath = $currentPath . $separator . $newPath;
// 新しいインクルードパスを設定します
set_include_path($newIncludePath);
echo "新しいインクルードパスが設定されています:\n";
echo get_include_path();
} else {
echo "既に指定されたディレクトリが含まれているパスを含めます,繰り返し追加する必要はありません。\n";
}
?>
get_cfg_var( 'include_path')は、デフォルトの構成のデバッグと理解に適したPHP.iniの元の構成を読み取るために使用されます。
get_include_path()は、現在のランタイムインクルードパスを取得するために使用されます。これには、ランタイムの動的調整が含まれる場合があります。
2つを一緒に使用すると、デフォルトの構成とランタイムステータスを明確に区別できます。
set_include_path()を使用して、含まれるパスを動的に調整し、ファイル検索戦略を柔軟に制御します。
これらの方法を通じて、PHP開発者は、プログラムの包含パスをよりよく把握および管理し、コードの柔軟性と堅牢性を向上させることができます。