この書き方の欠点: まず、指定された php インクルード パスを検索し、次に現在のディレクトリを検索します。 チェックされるパスが多すぎます。 スクリプトが別のディレクトリ内のスクリプトにインクルードされている場合、そのベース ディレクトリが他のスクリプトが配置されているディレクトリになります。 もう 1 つの問題は、スケジュールされたタスクがスクリプトを実行するとき、その親ディレクトリが作業ディレクトリではない可能性があることです。 したがって、最良のオプションは、たとえば次のような絶対パスを使用することです。
上記のコードは絶対パスを定義しており、値はハードコーディングされています。 次に、改善により、パス /var/www/project も変更される可能性があります。そのため、毎回変更する必要がありますか? いいえ、次のように __FILE__ 定数を使用できます。
今すぐ、外部サーバーに移動するなど、どのディレクトリに移動しても、コードは変更せずに正しく実行されます。 つまり、pathinfo 定数と __FILE__ 定数は、移植可能なコードを実現するために使用されます。 |