2017-06-03 7 views
0

私は、PHP関数の中でfalseを返すと実行を止めることができると確信していました(今日まで)。PHP関数内でfalseを返す場合は実行を停止しますか?

ファイルをオーバーライドするのに24時間以上経過しているかどうかをチェックするPHP関数を書いています。

新しいファイルは、絶対URL経由でWebサーバーからフェッチされます。私のローカルマシンでは、MAMPとLittle Snitch(Macファイアウォール)を使用します。私のコードの実行をテストしたときに、たとえファイルが24時間未満であっても正しく「終了スクリプト」を取得しますが、リトル・スニッチ・アラートが表示され、PHPに外部サーバーへの接続許可が与えられます。

関数の実行を終了するにはfalseが返されますか? この機能を起動するたびに、スクリプトが外部サーバーから情報を取得し続けることは望ましくありません。

サンプルコード

function fileUpdate($myfile) { 


    if (file_exists($myfile)) { 

     if (time()-filemtime($myfile) < 24 * 3600) { 

      echo "exit script"; 
      return false; 

     } 

    } 

    // execute code 
    $file = file_get_contents($myfile); 

    ........ 

} 

答えて

0

THRE return文は、あなたがここで機能 から何かをチェックする必要があるときにreturn

を使用することができます return false

使用return true/falseを使用する必要がいけない 実行を停止します。

その後、関数の実行は停止しますが、メインスレッドは実行を継続します

メインスレッドの使用を停止したい場合はexit()またはdie()

関連する問題