3 回答

TA貢獻1864條經驗 獲得超2個贊
您查找第一項的邏輯似乎有點多余,因為foreach()只有在沒有找到第一項(它總是會)時才會這樣做。
為了簡化代碼,只需回顯第一項,用于array_shift()刪除此值并foreach()覆蓋數組的其余部分...
$a=array("a","b","c");
echo $a[0]." and some code".PHP_EOL;
array_shift($a);
foreach($a as $c){
echo $c." and some different code".PHP_EOL;
}

TA貢獻1803條經驗 獲得超3個贊
您需要將 foreach 上移一級,如果您明確指定值,則無需搜索。加上其他一些小修復。這是最接近您的代碼的解決方案:
$a = array("a","b","c");
$b = $a[0];
foreach($a as $c) {
if ($b == $c) {
echo $b . " and some code\n";
} else {
echo $c . " and some different code\n";
}
}

TA貢獻1786條經驗 獲得超11個贊
您可以使用定義了索引的 foreach 并使用 case / if 語句?
foreach ($arr as $key => $value) {
if($key==0){
echo $value . "and some code";
} else if ($key===1){
echo $value . "and some different code";
} else {
echo $value . "and some even more different code";
};
};
- 3 回答
- 0 關注
- 141 瀏覽
添加回答
舉報