<?php
$province = ["北京","上海","天津","重慶","河北","山西","內蒙古","遼寧","吉林","黑龍江",
"江蘇","浙江","安徽","福建","江西","山東","河南","湖北","湖南","廣東",
"廣西","海南","四川","貴州","雲南","西藏","陝西","甘肅","寧夏","青海",
"新疆","香港","澳門","台灣","其他"];
echo count($province); // 34
echo is_array($province) ? "是陣列" : "非陣列";
for ($i=0; $i
<?php
$source = "hello1,hello2,hello3,hello4,hello5";
$hello = explode(',', $source);
// ["hello1","hello2","hello3","hello4","hello5"]
foreach ($hello as $item) {
echo $item . "<br>";
}
?>
<?php
$date = "04/30/1973";
// split() 已棄用 (PHP 5.3) / 移除 (PHP 7.0),請改用 preg_split 或 explode
list($month, $day, $year) = preg_split('/[\/.-]/', $date);
echo "Month: $month; Day: $day; Year: $year"; // 04; 30; 1973
?>
foreach ($arr as $v) 或 foreach ($arr as $k => $v),語意清晰且效能最佳。explode();多字元/正則用 preg_split();split()、ereg() 已移除。for ($i=0, $n=count($arr); $i<$n; $i++) 避免重複呼叫 count()(PHP 7+ 已優化,但習慣仍建議)。[$a, $b, $c] = $arr; 短語法,取代 list()。foreach: 0.0086 秒 ← 最快(內部引擎優化) for: 0.0228 秒 while+each: 0.0545 秒 ← 最慢(each() 移動內部指標)
結論:foreach 又快又簡潔,首選無疑。
explode() + foreach 是 PHP 處理「字串→陣列→遍歷」的黃金組合。棄用 split(),擁抱 preg_split() 與短陣列語法,寫出現代、高效、可維護的代碼。