Php 将Foreach数组拆分为奇数和偶数
这是数组Php 将Foreach数组拆分为奇数和偶数,php,html,foreach,Php,Html,Foreach,这是数组 $array = [ a=>["name"= "name1", "id"="1"..], b=>["name"= "name2", "id"="2"..], c=>["name"= "name3", "id"="3"..], d=>["name"= "name4", "id"="4"..], e=>["name"= "name5", "id"="5"..], f=>["name"= "name6", "id"="6"..],......
$array = [
a=>["name"= "name1", "id"="1"..],
b=>["name"= "name2", "id"="2"..],
c=>["name"= "name3", "id"="3"..],
d=>["name"= "name4", "id"="4"..],
e=>["name"= "name5", "id"="5"..],
f=>["name"= "name6", "id"="6"..],......);
我想要达到的是
foreach循环以回送类似这样的项目
我就是这么做的,但运气不好
$len = count($moduleTypes);
$firsthalf = array_slice($moduleTypes, 0, $len / 2);
$secondhalf = array_slice($moduleTypes, $len / 2);
断开阵列并分别回显每个阵列,
Foreach循环必须继续,但在第二次迭代中,它需要循环两次[B,C],下一次迭代一次[D],依此类推。。检查图像的透视图这不是精确的解决方案,但它将提供您可以在html代码中实现的精确逻辑
<?php
$array = array(1,2,3,4,5,6,7);
$counter = 1;
$temp = "";
foreach($array as $val){
if($temp == 1){
echo "E$val<br>";
$temp=0;
$counter++;
}else{
if($counter % 2 == 0){
echo "E$val<br>";
$temp = 1;
}else{
echo "O$val<br>";
}
}
$counter++;
}
其中O
是A、D、G
而E
是B,C,E,F
更新
foreach($array as $key => $val){
if($temp == 1){
echo "E".$val['name']."<br>";
$temp=0;
$counter++;
}else{
if($counter % 2 == 0){
echo "E".$val['name']."<br>";
$temp = 1;
}else{
echo "O".$val['name']."<br>";
}
}
$counter++;
}
foreach($key=>$val的数组){
如果($temp==1){
回声“E”。$val['name']。“
”;
$temp=0;
$counter++;
}否则{
如果($counter%2==0){
回声“E”。$val['name']。“
”;
$temp=1;
}否则{
回声“O”。$val['name']。“
”;
}
}
$counter++;
}
这不是确切的解决方案,但它将提供您可以在html代码中实现的确切逻辑
<?php
$array = array(1,2,3,4,5,6,7);
$counter = 1;
$temp = "";
foreach($array as $val){
if($temp == 1){
echo "E$val<br>";
$temp=0;
$counter++;
}else{
if($counter % 2 == 0){
echo "E$val<br>";
$temp = 1;
}else{
echo "O$val<br>";
}
}
$counter++;
}
其中O
是A、D、G
而E
是B,C,E,F
更新
foreach($array as $key => $val){
if($temp == 1){
echo "E".$val['name']."<br>";
$temp=0;
$counter++;
}else{
if($counter % 2 == 0){
echo "E".$val['name']."<br>";
$temp = 1;
}else{
echo "O".$val['name']."<br>";
}
}
$counter++;
}
foreach($key=>$val的数组){
如果($temp==1){
回声“E”。$val['name']。“
”;
$temp=0;
$counter++;
}否则{
如果($counter%2==0){
回声“E”。$val['name']。“
”;
$temp=1;
}否则{
回声“O”。$val['name']。“
”;
}
}
$counter++;
}
我想这就是你需要做的
for ($i = 1; $i <= count($array); $i = $i + 3) {
echo '<br>';
echo '-' . $array[$i-1] . '-';
if (!isset($array[$i])) break;
echo '<br>';
echo $array[$i] . ' ';
if (!isset($array[$i+1])) break;
echo $array[$i+1];
}
对于($i=1;$i我想这就是你需要的
for ($i = 1; $i <= count($array); $i = $i + 3) {
echo '<br>';
echo '-' . $array[$i-1] . '-';
if (!isset($array[$i])) break;
echo '<br>';
echo $array[$i] . ' ';
if (!isset($array[$i+1])) break;
echo $array[$i+1];
}
对于($i=1;$i而言,棘手的部分是HTML表格。祝贺我成功
棘手的部分是HTML表格。恭喜我成功
你说你想回显这样的项目,它是什么类型的数据,你是如何显示的?你的数组定义没有给出任何线索,你的尝试也无助于理解你问题的上下文。是的,我已经更新了数组example@AdhikJoshi您应用了什么HTML来显示这样的数据(您在图片中发布的内容)。将该HTML添加到你说你想回显这样的项目,它是什么类型的数据,如何显示?你的数组定义没有给出任何线索,你的尝试也无助于理解问题的上下文。是的,我更新了数组example@AdhikJoshi您应用了什么HTML来显示这样的数据(你在图片中发布的内容)。将HTML添加到你可以使用相同的逻辑你可以使用相同的逻辑