php定時執行問題,sleep後擷取參數問題

來源:互聯網
上載者:User
關鍵字 php
項目中需要用到定時執行,但是定時的時間是一個變數參數,不是固定的

開始考慮使用crontab來實現,但是時間參數沒辦法自訂,還需要獲得一個傳遞的ID來執行sleep後的程式

使用php中的sleep函數碰到一個問題,在sleep之前GET或者POST過來的參數,在sleep之後擷取不到。

ignore_user_abort(); //即使Client斷開(如關掉瀏覽器),PHP指令碼也可以繼續執行.  set_time_limit(0); // 執行時間為無限制,php預設執行時間是30秒,可以讓程式無限制的執行下去      $interval=$_GET['interval']; // 接收$_GET參數$id = $_GET['id']; //這裡是請求觸發的時候傳遞過來的ID,在sleep後需要用到flush();         sleep($interval); // 按設定的時間等待執行 */ /*** sleep後需要用到上面的$id,來執行其他程式,測試後發現$id擷取不到。為空白**/

有知道的大神嗎?或者提供一下其他的思路,謝謝了!

回複內容:

項目中需要用到定時執行,但是定時的時間是一個變數參數,不是固定的

開始考慮使用crontab來實現,但是時間參數沒辦法自訂,還需要獲得一個傳遞的ID來執行sleep後的程式

使用php中的sleep函數碰到一個問題,在sleep之前GET或者POST過來的參數,在sleep之後擷取不到。

ignore_user_abort(); //即使Client斷開(如關掉瀏覽器),PHP指令碼也可以繼續執行.  set_time_limit(0); // 執行時間為無限制,php預設執行時間是30秒,可以讓程式無限制的執行下去      $interval=$_GET['interval']; // 接收$_GET參數$id = $_GET['id']; //這裡是請求觸發的時候傳遞過來的ID,在sleep後需要用到flush();         sleep($interval); // 按設定的時間等待執行 */ /*** sleep後需要用到上面的$id,來執行其他程式,測試後發現$id擷取不到。為空白**/

有知道的大神嗎?或者提供一下其他的思路,謝謝了!

把flush注釋掉

測試可以執行

ignore_user_abort(); //即使Client斷開(如關掉瀏覽器),PHP指令碼也可以繼續執行.  set_time_limit(0); // 執行時間為無限制,php預設執行時間是30秒,可以讓程式無限制的執行下去      // params$interval=$_GET['interval']; // 接收$_GET參數$id = $_GET['id']; //這裡是請求觸發的時候傳遞過來的ID,在sleep後需要用到flush();         sleep($interval);echo $id;
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.