2017-12-11 10 views
0

私はPHPを使用して関数を書きました。それがCronジョブを使って実行されているときには、いくつかの問題があります。 正常に実行されている場合(Cronジョブがない場合は問題ありません)、何らかのアイデアがあります。私のCronジョブを実行すると、以下のメールが届きました

<?php 
require "PHPMailer/src/PHPMailer.php"; 
require "PHPMailer/src/OAuth.php"; 
require "PHPMailer/src/SMTP.php"; 
require "PHPMailer/src/POP3.php"; 
require "PHPMailer/src/Exception.php"; 
require 'PHPMailer/src/PHPMailerAutoload.php'; 

use PHPMailer\PHPMailer\PHPMailer; 
use PHPMailer\PHPMailer\Exception; 

これはPHPこの実行は、cronジョブ

を使用する場合には問題である私のコード

の一部です:そのようなファイルやディレクトリはありません

ライン2:含める:コマンド?見つからない

行3:コマンドが見つかりません:

ライン4:含む:含む:コマンドは

見つかりません含む:含む:コマンドは

線9が見つかりません:コマンドは

線7を見つけていないコマンドが

ライン5が見つかりません使用:コマンドは

ライン10が見つかりません:使用:コマンドが見つかりません

これに関する考え方

+0

どのようにcrontabの中で、あなたのスクリプトを呼び出します:

は、明示的にPHPに言及し、あなたのcronコマンドを変更

? – kerbholz

+0

cronスクリプトを持っているPHPMailerライブラリをお持ちですか?この場合、同じディレクトリでなければなりません。オートローダを使用しているようです。それがコンポーザーの場合は、autoload.phpをcronスクリプトの先頭に追加する必要があり、ベンダのディレクトリは同じディレクトリに置く必要があります。 –

+0

script/robots.phpへのパスこれは私のcronジョブでスクリプトを呼び出す方法です。はい、そのフォルダにPHPMailerライブラリがあります。 –

答えて

0

シェルインタープリタ(おそらくbash)でスクリプトを実行しようとしていますが、シェルではなくPHPで書かれています!

20 21 * * * /path/to/bin/php /path/to/your/script.php 
+0

ありがとうございました、今はうまくいきます –

関連する問題