首頁  >  文章  >  後端開發  >  php中For、While、Foreach的比較說明

php中For、While、Foreach的比較說明

伊谢尔伦
伊谢尔伦原創
2017-06-23 13:23:091520瀏覽

在使用PHP作為程式語言的過程中,我們常常會遇到需要將一段程式碼執行多次的情況。這時就需要用到PHP迴圈了。 PHP提供了三種不同類型的迴圈供你在適當的場景中使用:

  • For 迴圈

  • While 迴圈

  • Foreach 循環

#For循環

for迴圈用於已經確定將你的表達式需要執行多少次的情況。

語法:

for (initialization; condition; increment)
{
    code to be executed;
}
<?php
for($i=1; $i<=100000; $i++)
{    
   echo "The number is " . $i . "<br>";
}
?>

While循環

#while表達式將會執行一段程式碼直到條件語句為false。 While循環通常更適合資料庫相關操作。

語法:

while (condition)
{
    code to be executed;
}
<?php
// If you had an array with fruit names and prices in you could use foreach
$fruit = array( 
    "orange" =--> "5.00", 
    "apple" => "2.50", 
    "banana" => "3.99" 
); 

foreach ($fruit as $key => $value) 
{ 
 "$key is $value dollars";
} 
?>

三種循環的比較

#我們知道在PHP中有多種循環,現在我們需要知道哪種循環更有效率,以便於我們編寫的應用程式更快。

下面我們開始實驗進行比較.

While迴圈vs. For迴圈

<?php    
// While Loop    
$a=0;    
     while($a < 1000)
    {
        $a++;
    }
?>

VS.

<?php    
  // For Loop    
    for($a = 0; $a < 1000;)
    {
     $a++;
    }
?>

上述實驗證明While迴圈比For迴圈執行效率高出19.71%。因此,建議盡可能的使用while循環而不是For循環。

For循環vs Foreach循環

<?php    
  $test = array(1 => "cat", "dog" => 0, "red" => "green", 5 => 4, 3, "me");    
  $keys = array_keys($test);    
  $size = sizeOf($keys);    
  for($a = 0; $a < $size; $a++)
 {        
    $t = $test[$keys[$a]];
  }
?>

VS.

<?php    
  $test = array(1 => "cat", "dog" => 0, "red" => "green", 5 => 4, 3, "me");    
  foreach($test as $t)
  {
    
 }
?>

上述實驗證明Foreach 循環比For循環快141.29%!

#結論

這些循環通常用於實現不同的目的,現在我們知道了各個循環在執行效率上的表現。當需要追求執行效率的時候,我們通常會建議使用while迴圈來取代for迴圈。同樣的在foreach循環和loop循環之間,盡可能的使用foreach循環。下一步,我們將會研究如何有效地在模板中使用循環。請繼續關注。



以上是php中For、While、Foreach的比較說明的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn