end() 將陣列內部指標移至最後一個元素並回傳其值,是取得陣列尾部元素的最簡潔方式。
<?php
$domains = ["baidu.com", "haosou.com", "sina.com", "jb51.net"];
$last = end($domains);
echo $last; // jb51.net
?>
$lastKey = key($domains); // end() 後內部指標在最後,key() 即為最後鍵
$empty = [];
$val = end($empty); // false
if ($val === false) echo "陣列為空";
reset($arr); // 指標移到第一個
end($arr); // 指標移到最後一個
prev($arr); // 移到倒數第二個
next($arr); // 移到下一個(若在最後則 false)
current($arr); // 取得目前指標元素值
| 方法 | 回傳 | 副作用 | 適用場景 |
|---|---|---|---|
| end($arr) | 最後元素值 | 移動內部指標 | 唯讀取得尾部值 |
| $arr[count($arr)-1] | 最後元素值 | 無 | 數值索引陣列、不想動指標 |
| array_pop($arr) | 最後元素值 | **刪除**最後元素 | 需彈出並移除(堆疊操作) |
| array_slice($arr, -1)[0] | 最後元素值 | 無 | 函數式風格、不動原陣列 |
end() 簡潔高效,但會改變內部指標。若後續仍需遍歷陣列,記得先 reset()。一般情況下 $arr[count($arr)-1] 或 array_slice($arr, -1)[0] 更安全無副作用。