如何確定 PHP foreach 迴圈中的第一次和最後一次迭代
Ralfh Bryan Perez
2023年1月30日
2020年3月28日
PHP foreach()
迴圈用於遍歷陣列中的每個元素。在本文中,我們將來學習如何使用 foreach()
迴圈以及如何獲取陣列的第一項和最後一項元素。
PHP foreach()
語法
foreach()
迴圈主要用於遍歷陣列的每個值。
foreach()
迴圈示例:
for($array as $key => $value){
// Add code here
}
foreach()
引數含義:
$array
- 它必須是在迴圈中使用的有效陣列;如果傳遞的陣列無效或字串無效,則返回如下錯誤:(Warning: Invalid argument supplied forforeach()
)。$key
- 它是每次迭代中的元素的鍵值。$value
- 它是每次迭代中的元素的值。
在 PHP 的 foreach()
迴圈中獲取第一個和最後一個元素
有幾種方法可以在 PHP 在迴圈中獲取第一個和最後一個元素,並且在不同版本上方法也是不同的。
這些方法包括,通過使用計數器(適用於所有版本),適用於 PHP 7.3 的 array_key_first()
和 array_key_last()
。
在 PHP foreach
迴圈中使用計數器
新增一個整數變數並將計數器放在 foreach()
迴圈的底部。
例:
$array = array("dog", "rabbit", "horse", "rat", "cat");
$x = 1;
$length = count($array);
foreach($array as $animal){
if($x === 1){
//first item
echo $animal; // output: dog
}else if($x === $length){
echo $animal; // output: cat
}
$x++;
}
在上面的示例中,動物列表是作為用陣列
來儲存的。
然後將 $x
設定為 1 來以啟動計數器。
使用 count()
來確定陣列的總長度。計數器的迭代位於 foreach()
迴圈的底部 - $x++;
,所以 $x == 1
是獲取第一項元素的條件,因為計數器還沒有開始累加。
要獲取最後一項元素,我們來檢查 $x
是否等於陣列的總長度。如果為 true
,則它將得到最後一項元素。
在 PHP 迴圈中使用 array_key_first()
和 array_key_last()
使用最新版本的 PHP,獲取陣列中的第一個和最後一個元素變得更加高效。
例如:
$array = array("dog", "rabbit", "horse", "rat", "cat");
foreach($array as $index => $animal) {
if ($index === array_key_first($array))
echo $animal; // output: dog
if ($index === array_key_last($array))
echo $animal; // output: cat
}
在上面的示例中,array_key_first()
獲取陣列中第一個元素的鍵值,在本例中為 0
。
然後,array_key_last()
獲得陣列的最後一個鍵值,在此處的例子中為 5
。
通過檢查陣列,我們可以得到第一個元素的鍵值為 0
,它的值為 dog
,而最後一個元素的鍵值/索引為 5
,它的值為 cat
。
相關文章 - PHP Loop
- 迴圈遍歷 PHP 中的關聯陣列
- 跳出 PHP 中的 Foreach 迴圈
- PHP 中 for 迴圈和 foreach 迴圈的效能和可讀性
- 在 PHP 中的多維陣列中使用 Foreach 迴圈
- 在 PHP 中檢查 foreach 迴圈鍵值