我正在使用循環約1000次和更多次的foreach語句。我想知道是否有辦法像每50個循環一樣回顯結果,直到達到1000並停止。如何分割你的foreach,它會產生1000個循環,並在每50個循環中回顯輸出?
它的目的是因爲我正在編寫一個爬蟲程序,我偶爾會看到一些腳本發現的結果,而不是等待很多時間。
謝謝
我正在使用循環約1000次和更多次的foreach語句。我想知道是否有辦法像每50個循環一樣回顯結果,直到達到1000並停止。如何分割你的foreach,它會產生1000個循環,並在每50個循環中回顯輸出?
它的目的是因爲我正在編寫一個爬蟲程序,我偶爾會看到一些腳本發現的結果,而不是等待很多時間。
謝謝
DhruvPathak的解決方案類型的作品,但正確的答案應該是像
$freq = 50;
for($i = 0 ;$i < 1000 ;$i++)
{
/* some work here */
if($i % $freq == ($freq-1))
echo "my message \n";
}
if($i % $freq != ($freq-1))
echo "last echo \n";
在此方案中,回聲每個50後進行(而不是第一個項目之後做的,然後每個50後項目),如果需要,最後的回聲將在最後完成。
您可以在if條件中使用「%」運算符。
for($i = 0 ;$i < 1000 ;$i++)
{
/* some work here */
if($i % 50 == 0)
echo "my message \n";
}
您必須保留一個計數器,並檢查它在每次迭代:
$i = 1;
foreach ($something as $current) {
if ($i % 50 == 0) {
echo "Iteration: $i \n" ;
}
$i++ ;
}
的modulo operator %是這個有用的。
Ευχαριστώ,Ελληνικά|Русский|한국어|日本語|簡體中文|繁體中文|العربيةBookmark and Share – EnexoOnoma
Καλήσυνέχεια:)休息:請忽略奇怪的語言,只是pleasantries – Fanis
因此,它是那麼容易!謝謝,我必須等待12分鐘才能接受它。 – EnexoOnoma