2011-04-11 85 views
1

如果我有:阵列循环语法

$data = array(
    'id01' => array(
    'firstName' => 'Eric', 
    'lastName' => 'Smith', 
), 
    'id02' => array(
    'firstName' => 'John', 
    'lastName' => 'Turner', 
), 
); 

foreach ($data as $key){ 
    print "$key[firstName]<br>"; 
    echo $key[0]; 
} 

$key[0]部分是不工作...基本上我试图输出ID01,然后ID02,基本阵列的ID部分的for循环是处理...

关于正确语法的任何想法?

+0

不应该使用'$ key [firstName]'? – MByD 2011-04-11 16:09:30

回答

5

你需要的是

foreach ($data as $key => $val){ 
    print "$val[firstName]<br>"; //changed to $val 
    echo $key; //prints id01, id02 
} 
+0

作品!谢谢。 FG – David19801 2011-04-11 16:14:01

1

没有键0,只是第一个和最后一个名字 - 你需要这样做

foreach ($data as $key => $value) 
{ 
    echo "Key is " . $key . ", value of firstName 
      is " . $value["firstName"] . "<br />"; 
} 
+0

但我想id值...像id01或id02等...名字部分作品... – David19801 2011-04-11 16:09:56

+0

请参阅我的编辑..... – 2011-04-11 16:10:22

0

尝试:

foreach ($data as $key=>$value) 
1

东西喜欢这个?

foreach ($data as $key=>$value){ 
    print "$value[firstName]<br>"; 
    echo $key.'<br />'; 
}