我在数组输出中遇到问题,以下是我在var_dump中输出的二维数组,但是当我回显这个数组时,它只显示总共9个索引,而不是显示3个9行的9 9 9个索引维数组。
输出var_dump
array (size=3)
0 =>
array (size=11)
0 => string '' (length=0)
1 => string '<p class=" td26">' (length=17)
2 => string '<p class=" td26">' (length=17)
3 => string '<p class=" td26">' (length=17)
4 => string '<p class=" td26">' (length=17)
5 => string '<p class=" td26">' (length=17)
6 => string '<p class=" td26">' (length=17)
7 => string '<p class=" td26">' (length=17)
8 => string 'Mining' (length=6)
9 => string '<p class=" td26">' (length=17)
10 => string '<p class=" td26">' (length=17)
1 =>
array (size=11)
0 => string '' (length=0)
1 => string 'Abc<p class="tr3 td26">' (length=23)
2 => string '<p class=" td26">' (length=17)
3 => string 'Ahsan<p class="tr3 td26">' (length=25)
4 => string '<p class=" td26">' (length=17)
5 => string 'mm<p class="tr3 td26">' (length=22)
6 => string '<p class=" td26">' (length=17)
7 => string 'oo<p class="tr3 td26">' (length=22)
8 => string '<p class=" td26">' (length=17)
9 => string 'kk<p class="tr3 td26">' (length=22)
10 => string '<p class=" td26">' (length=17)
2 =>
array (size=11)
0 => string 'Fical' (length=5)
1 => string '2005-06' (length=7)
2 => string '2006-07' (length=7)
3 => string '2007-08' (length=7)
4 => string '2008-09' (length=7)
5 => string '2009-10' (length=7)
6 => string '2010-11' (length=7)
7 => string '2011-12' (length=7)
8 => string '2012-13' (length=7)
9 => string 'Change' (length=6)
10 => string 'Change2' (length=7)
回声输出:
Abc
Ahsan
mm
oo
kk
Fical
2005-06
2006-07
2007-08
2008-09
2009-10
10是我在某个变量中定义的限制,但问题是,当我打印小于10的值时,它们打印得很好(显然),但不超过10,我应该怎么做/审查?
错误代码(有错误):
foreach($d as $k=>$v){
if(($v=='')&&($k!==0)){
$d[$k].="<p class=\" td26\">" ;
$d[$k-1].="<p class=\"tr3 td26\">" ;
}
}
答案 0 :(得分:0)
您是在浏览器上还是在命令行上测试此脚本?
如果你在浏览器上,这是很正常的,因为打印一个像
这样的字符串 <p class="td26">
根本不可见......: - )
更多,你不能使用echo来打印数组的值(你应该只获得字符串“Array”...)。
你应该更好地解释你想要获得的东西......
答案 1 :(得分:0)
这是你的代码:
foreach($d as $k=>$v){
if(($v=='')&&($k!==0)){
$d[$k].="<p class=\" td26\">" ;
$d[$k-1].="<p class=\"tr3 td26\">" ;
}
}
为什么要设置$d[$k]
然后立即设置$d[$k-1]
? $k-1
有效地覆盖了您以前的值吗?为什么不这样做呢:
foreach($d as $k=>$v){
if(($v=='')&&($k!==0)){
$d[$k].="<p class=\" td26\">"
. "<p class=\"tr3 td26\">"
;
}
}
除非我完全错过代码的目标?