亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php是循環執行的嗎?

php是循環執行的嗎?

PHP
米琪卡哇伊 2023-08-11 15:57:04
我需要刪除 filename.html(如果存在),創建一個新的 filename.html 并顯示它,但我有以下問題。當創建一個新的 filename.html 時,它會立即被終止,就像 php 重新開始一樣。有沒有辦法執行一次?這是我的 php.ini。<?php  $filename = 'filename.html';  if (file_exists($filename)) {       // if filename.html exist i delete it     unlink($filename);  }  do {    if (file_exists($filename)) {    // waiting for a new filename.html (generated by another process)         include ($filename);        // i will show it when ready         break;    }  } while(true);?>我也嘗試過此解決方法僅在開始時執行刪除,但它不起作用:if( !defined('ALREADYEXECUTED') ){         if (file_exists($filename)) {     unlink($filename);  }}define('ALREADYEXECUTED', TRUE);
查看完整描述

3 回答

?
慕后森

TA貢獻1802條經驗 獲得超5個贊

header("Refresh:2") 的測試對我不起作用,但它幫助我找到了解決方案(肯定有更好的解決方案):


我不得不將 php 分成 2 部分:


首先:


<?php


  $filename = 'filename.html';


  if (file_exists($filename)) {       // if filename.html exist i delete it

     unlink($filename);

  }


  header('Location:secondfile.php');

}

第二個文件是這樣的:


  <?php

    

      $filename = 'filename.html';

    

      do {

        if (file_exists($filename)) {

          usleep( 100000 );

          include ($filename);

          break;

        }

      } while(true);


  ?>

回答一些問題: $filename 在幾毫秒內創建。之前創建的文件被刪除,在這種情況下不會再被刪除。我不是 php 專家,如果有更好的解決方案在一個文件中完成它,我會很高興學習。


查看完整回答
反對 回復 2023-08-11
?
慕娘9325324

TA貢獻1783條經驗 獲得超4個贊

您在代碼中使用了無限循環,這對于您要做的事情來說不是最佳實踐!


您可以使用header("Refresh:1")刷新頁面來每秒檢查文件是否存在。這可以節省你的資源,也可以做你想做的事。


<?php

header("Refresh:2");

$filename = 'filename.html';


if (file_exists($filename)) { // if filename.html exist i delete it

    unlink($filename);

}


if (file_exists($filename)) { // waiting for a new filename.html (generated by another process)

    include ($filename); // i will show it when ready

}


?>

包含新文件后要小心刪除header("Refresh:2"),或使用條件來避免包含后刪除。


查看完整回答
反對 回復 2023-08-11
?
波斯汪

TA貢獻1811條經驗 獲得超4個贊

只需擺脫 do while 循環,這就是導致無限循環的原因。那本來的目的是什么?



查看完整回答
反對 回復 2023-08-11
  • 3 回答
  • 0 關注
  • 149 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號