2016-03-26 77 views
0

有沒有辦法檢查在PHP中運行的PHP PDO Query while循環的時間?例如,用戶需要根據他們所擁有的數據更新他們的信息,這可能需要30秒或3分鐘。我想在嘗試運行while循環查詢之前將其顯示給用戶。計算在while循環中運行查詢需要多長時間?

+0

不,我不這麼認爲。你可能會猜到,但你永遠不知道運行多久纔會運行它。 –

+0

如果保留指標,並且您可以將它們存儲爲可以查詢它們的方式,那麼我認爲可以生成合理的估計值。如果沒有,最好的人可以做的就是猜測。 –

+0

值得一試,但Trevor的回覆似乎是一種很好的方法。 –

回答

0

沒有辦法做到這一點準確。

如果您在您的計算機上本地這樣做,這將取決於計算機的硬件規格,計算機的負荷在那個時候,等

如果從客戶端做的服務器(即:用戶連接到您的網站託管在服務器上),這取決於您的互聯網連接,計算機的速度,服務器的速度以及這兩種設備的當前負載。

基本上,有太多的變數需要考慮,你永遠不會得到一個精確的估計。

然而 你總是可以給基於幾個測試粗略估計...

在您的計算機,你可以做一個測試運行循環10,30,50,ECT次,並使用this後測量需要多長時間:

$start = microtime(true); 
while (...) { 

} 
$time_elapsed_secs = microtime(true) - $start; 

然後在你的代碼的最終版本...這取決於你有多少次的代碼將循環使用你的結果給您的用戶如何粗略估計它需要很長時間。