php foreach 二维数组遍历下标问题
代码很简单
<?php
$myarr=array();
$myarr[0]=array(0=>"011",1=>"022",2=>"033",);
$myarr[1]=array(0=>"111",1=>"122",2=>"133",);
$myarr[2]=array(0=>"211",1=>"222",2=>"233",);
$myarr[3]=array(0=>"311",1=>"322",2=>"333",);
$myarr[4]=array(0=>"411",1=>"422",2=>"433",);
$myarr[5]=array(0=>"511",1=>"522",2=>"533",);
echo"<pre>";
print_r($myarr);
foreach($myarr as $key)
{
print_r($key);
}
?>下面是输出的结果
Array
(
[0] => Array
(
[0] => 011
[1] => 022
[2] => 033
)
[1] => Array
(
[0] => 111
[1] => 122
[2] => 133
)
[2] => Array
(
[0] => 211
[1] => 222
[2] => 233
)
[3] => Array
(
[0] => 311
[1] => 322
[2] => 333
)
[4] => Array
(
[0] => 411
[1] => 422
[2] => 433
)
[5] => Array
(
[0] => 511
[1] => 522
[2] => 533
)
)
Array
(
[0] => 011
[1] => 022
[2] => 033
)
Array
(
[0] => 111
[1] => 122
[2] => 133
)
Array
(
[0] => 211
[1] => 222
[2] => 233
)
Array
(
[0] => 311
[1] => 322
[2] => 333
)
Array
(
[0] => 411
[1] => 422
[2] => 433
)
Array
(
[0] => 511
[1] => 522
[2] => 533
)
看到差距了直接输出的有首个下标 ,而foreach只是在第一个数组下进行的遍历 也就是没有首下标
现在比如我们都要用数组表示 511 这个变量myarr的话就是myarr[5][0];而$key只要 $key[1]
就可以了 此时 $key就只有一个数组
Array
(
[0] => 511
[1] => 522
[2] => 533
)
前面都被覆盖掉了
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: Java中getBytes()的用法
- 下一篇: 微博第三方登录
