PHP函式運用之暫停幾秒後開始執行程式

2022-10-09 16:45:10 字數 1546 閱讀 9210

在之前的文章《php函式運用之怎麼退出指令碼程式》中,我們介紹了終止指令碼執行、退出當前程式的幾種方法。這次我們繼續php函式的學習,介紹一下php延遲執行當前指令碼的方法,感興趣的朋友可以學習了解一下~在**開發的時候,有時候我們需要某個功能或者程式需要延遲幾秒或者一段時間來執行。那麼怎麼延遲執行當前指令碼到指定的時間(多少秒後)呢?

下面就來給大家介紹php中的三個延遲執行**函式,分別是:sleep()、time_nanosleep()和time_sleep_until()。注sleep()和time_sleep_until()函式都不支援負數,如果指定秒數是負數,則會丟擲乙個錯誤。

一、使用sleep()函式來延遲執行指令碼程式

sleep函式表示延緩執行,可延遲執行當前指令碼若干秒。

sleep() 函式的語法為:

sleep($seconds)該函式只接受乙個必需引數 $seconds,用於指定指令碼需要延遲多少秒。如果成功則返回 0,如果錯誤則返回 false;如果呼叫被訊號中斷,該函式返回乙個非零值。

我們通過具體示例來了解一下:

<?php // 當前時間

echo date("y-m-d h:i:s")."

";// 延遲5秒鐘

sleep(5);

echo date("y-m-d h:i:s");

?>輸出結果:

二、使用time_nanosleep()函式來延遲執行指令碼程式

time_nanosleep() 函式延遲執行當前指令碼若干秒和納秒。

time_nanosleep() 函式的語法為:

time_nanosleep($seconds,$nanoseconds)該函式接受2個必需引數 $seconds(延遲秒數) 和 $nanoseconds(延遲納秒數)。如果成功則返回 0,如果錯誤則返回 false;如果呼叫被訊號中斷,將返回帶有延遲中剩餘的秒數和延遲中剩餘的納秒數的關聯陣列。

我們通過具體示例來了解一下:

<?php // 當前時間

echo date("y-m-d h:i:s")."

";// 延遲5.5秒鐘

time_nanosleep(5,500000000);

echo date("y-m-d h:i:s");

?>輸出結果:

三、使用time_sleep_until()函式來延遲執行指令碼程式

time_sleep_until() 函式延遲執行當前指令碼直到指定的時間。

time_sleep_until() 函式的語法為:

time_sleep_until($timestamp)該函式只接受乙個必需引數 $timestamp,用於規定喚醒的時間。如果成功則返回 0,如果錯誤則返回 false。

我們通過具體示例來了解一下:

<?php // 當前時間

echo date("y-m-d h:i:s")."

";// 延遲7秒鐘

time_sleep_until(time()+7);

echo date("y-m-d h:i:s");

?>輸出結果:

好了就說到這裡了,有其他想知道的,可以點選這個哦。→ →php**教程

php 函式運用舉例

php array column 從記錄集中取出 last name 列 表示由資料庫返回的可能記錄集的陣列 a array array id 5698,first name bill last name gates array id 4767,first name steve last name ...

php中set time limit 函式運用

當你的頁面有大量資料時,建議使用set time limit 來控制執行時間,預設是30s,所以需要你將執行時間加長點。如 set time limit 0 表示持續執行到程式結束,但這個函式有些在window環境下有些人設定不成功,linux下也可能會出現問題的,做好在邏輯 加上try catch...

(理論篇)petshop中快取運用之我見

petshop中關於快取的應用很廣泛,這裡主要是剖析一下實現 1 先從cs頁面開始看起,見 namespace petshop.web webutility.getcategoryname此方法根據商品id取得商品名稱,此名稱是有快取的 2 來看webutility這個通用類裡的實現 public ...