を実行して下phpinfo()
のConfiguration
カテゴリを見ると、ローカル値とマスター値を持つ、PHP Core
というタイトルのディレクティブが表示されます。include_path
この場合、私のローカル値はに設定されます
。: 。/含む: ../含む: / usr / share / php: / usr / share / php / smarty: / usr / share / pear
私のマスター値はに設定されています
。: / usr / share / php: / usr / share / pear: / usr / share / php / pear: / usr / share / php / smarty
これがどのように機能するかを学ぼうとしている理由は、私が取り組んでいるシステムに「Smarty.class.php
Smarty Templating Engine」を使用している人なら誰でもよく知っていると思われる、というタイトルのファイルがあるためです。
PHPファイルの1つには、次のものが含まれています。
require_once( "Smarty.class.php"); require_once( "user_info_class.inc");
このファイルuser_info_class.inc
は、インクルードを作成するファイルと同じディレクトリにあります。これは私にとって完全に理にかなっており、私が常にファイルを参照する方法です。Smarty.class.phpファイルを開きたいと思い、同じディレクトリにあると想定しましたが、そうではありませんでした。
少し掘り下げた後、私はそれらのphp_ini
変数を発見し、最終的にディレクトリ内のファイルを見つけることができましたusr/share/php/smarty/
。
したがって、インクルードを作成するときは、のローカル値とマスター値の間のある種の順序に従うように見えますinclude_path
。
私の推論がこれまでのところ正しいと仮定して、誰かがPHPが含まれるファイルを検索する順序を説明できますか?