我想在输出中显示以下数组为 246,357,即不处理第一个子数组,其余子数组组合应该像
$array[1][0].$array[2][0].$array[3][0]
,类似的组合应该是$array[1][1]。 $array[2][1].$array[3][1]
$array=[
[0,1],
[2,3],
[4,5],
[6,7]
];
我已经编写了以下代码,但无法绕过第一个子数组,所以我的输出是 0246,1357
.plz help。
foreach($array as $n)
{
$a.=$n[0];
$b.=$n[1];
}
echo "$a".","."$b";
最佳答案
跳过第一个元素的一种方法是使用标志变量$first
:
$first = true;
foreach ($array as $n) {
if ($first) {
$first = false;
} else {
$a .= $n[0];
$b .= $n[1];
}
}
另一种方法是从数组中删除第一个元素,这样它就会被跳过:
unset($array[0]);
或者在 foreach 循环中检查键:
foreach ($array as $k => $n) {
if ($k > 0) {
$a .= $n[0];
$b .= $n[1];
}
}
另一种方法是使用 array_shift()
,它除了删除第一个元素外还更改数字键:
array_shift($array);
最后,因为你的数组只包含从 0 开始的连续整数键,你可以只使用普通的 for 循环:
for ($i = 1; $i < count($array); $i++) {
$a .= $array[$i][0];
$b .= $array[$i][1];
}
关于php - 如何显示特定的数组组合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17828664/