ホームページ > バックエンド開発 > PHPチュートリアル > php cli モードでファイルを実行すると、必要なロード パスが異常になります。

php cli モードでファイルを実行すると、必要なロード パスが異常になります。

WBOY
リリース: 2016-06-13 12:27:46
オリジナル
1081 人が閲覧しました

php cli モードでファイルを実行すると、ロード パス エラーが必要です

今日、同僚が突然、スケジュールされたタスクを実行するために作成した php スクリプトが常に実行に失敗すると言いました。

スクリプト自体は非常に単純で、いくつかのライブラリ ファイルが含まれており、関数を実行するだけです。この関数は他の場所で呼び出されているため、問題はありません。ブラウザを使用してローカルでページにアクセスしたところ、同僚のスケジュールされたタスクに問題はなかったようです。再度コマンドラインを開き、PHPを使用してスクリプトを直接実行すると、パスが間違っているようです。

原因は分かりませんが、エラーレポートを見る限り、パスが間違っているのではないかと思われるので、相対パスをすべて絶対パスに変更しました。 を実行して問題は解決しました。

Baiduで検索してみたところ、PHPでスクリプトを実行する際、スクリプトを実行する場所が現在PHPコマンドを実行しているパスになるため、相対パスが間違っていることが分かりました。問題を解決するには 2 つの方法があります:

まず、絶対パスを使用します。これはさらに面倒です。いずれかが間違っていると、すべてのインクルード ファイルに含まれるファイル パスが含まれます。したがって、実行可能ファイルが比較的単純な場合にのみ役立ちます。

2. chdir 関数を使用して、現在の実行ディレクトリをファイルが存在するディレクトリに変更します。chdir(dirname(__FILE__));

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート