$arr = array(1,2,3,4,5,6,7,8,9,0);
我想输出的效果如下:
<div class="a"><span>1</span><span>2</span></div>
<div class="a"><span>3</span><span>4</span></div>
<div class="a"><span>5</span><span>6</span></div>
<div class="a"><span>7</span><span>8</span></div>
<div class="a"><span>9</span><span>0</span></div>
在线等挺急的!
你这样的数组结构肯定是不行的,每次都只会遍历一个元素,除非你是个二维数组,二维数组里面是两个元素,这样才可以,比如说
$arr = [[1,2],[3,4]];foreach ($arr as $key => $value) {
echo $arr[$key][0];
echo $arr[$key][1];
}追问
可是我拿到的数据就是一个一位数组呢
追答一维数组肯定是不行啦,数组遍历的原理就是同等层级下一个一个的遍历,但你上面的需求并不是不可实现,你可以在循环里面做下判断,让里面的元素每隔两个就拼接一个div标签,单个就拼接span标签,可以像我下面这么写
$arr = array(1,2,3,4,5,6,7,8,9,0);$html = '';
$div = '';
$span = '';
foreach ($arr as $key=>$value) {
$span .= '<span>' . $value . '</span>';
if ($key%2!=0) {
$div = '<div>' . $span . '</div>';
$html .= $div;
$div = '';
$span = '';
}
}
echo $html;追问
如果我这个是对象不是数组怎么实现呢?$arr={a=>1,b=>2,c=>3,d=>4,e=>5,f=>6,g=>7,h=>8,j=>9,k=>0,}
我这个是对象 用你上面的方法好像不行呢?
温馨提示:答案为网友推荐,仅供参考
第1个回答 2019-05-03
前一列输出奇数,后一列输出偶数,这样能行吗追问
能写一下吗