php – 循环中的错误数组值
发布时间:2020-12-13 16:22:23 所属栏目:PHP教程 来源:网络整理
导读:我正在尝试这个循环,但我在$m [2] [3]中遇到了问题.没有显示任何值.所以我有一些增量问题. $nArr = array('A','B','C','D','E','F');$lp = 4;for ($i = 0; $i $lp; $i++) { $m[$i][$i] = 1; for ($x = $i; $x $lp; $x++) { $v = $i+$i; $m[$i][$x+1] = $nArr
我正在尝试这个循环,但我在$m [2] [3]中遇到了问题.没有显示任何值.所以我有一些增量问题.
$nArr = array('A','B','C','D','E','F'); $lp = 4; for ($i = 0; $i < $lp; $i++) { $m[$i][$i] = 1; for ($x = $i; $x < $lp; $x++) { $v = $i+$i; $m[$i][$x+1] = $nArr[$x+$v]; } } 这是我的输出: 1 + A + B + C + - 1 + D + E + - 1 + + - 1 + 我想要的输出: 1 + A + B + C + - 1 + D + E + - 1 + F + - 1 + 详细地: echo $m[0][0]."+"; 1 echo $m[0][1]."+"; A echo $m[0][2]."+"; B echo $m[0][3]."+"; C echo " - "; echo $m[1][1]."+"; 1 echo $m[1][2]."+"; D echo $m[1][3]."+"; E echo "- "; echo $m[2][2]."+";1 echo $m[2][3]."+"; //error,must be F echo "- "; echo $m[3][3]."+"; 1 解决方法
你的问题在于你的进步.在第二个“for”中,您的进展迅速增加:
$v = $i+$i; $m[$i][$x+1] = $nArr[$x+$v]; >在第一次迭代中以0 0 0($x $i $i)= 0 =开始 您应该更改进度以获得下一个索引进度:0,3,5. 试试这个: $nArr = array('A','F'); $lp = 4; for ($i = 0; $i < $lp; $i++) { $m[$i][$i] = 1; for ($x = $i; $x < $lp; $x++) { $v = $i+ceil($i/2); $m[$i][$x+1] = $nArr[$x+$v]; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |