$a=array('a','b','c');
foreach ($a as $a) {
echo $a[0].'<br />';
}
如果改成以下输出方式也能正常输出,为什么$a一定要as一个新变量给$b了来用$b[]输出呢?为什么不像下面这样直接$a as $a了之后输出?
$a=array('a','b','c');
foreach ($a as $b) {
echo $b[0].'<br />';
}
foreach ($a as $a) {
echo $a[0].'<br />';
}
如果改成以下输出方式也能正常输出,为什么$a一定要as一个新变量给$b了来用$b[]输出呢?为什么不像下面这样直接$a as $a了之后输出?
$a=array('a','b','c');
foreach ($a as $b) {
echo $b[0].'<br />';
}
$a=array('a','b','c');
第一次循环$a as $a
相当于$a = $a[0];
echo $a[0]能输出什么呢???第二种方法
$a=array('a','b','c');
第一次循环$a as $b相当于$b = $a[0];即$b=='a';
$b[0]==????
foreach ($a as $b) {
echo $b.' <br />';
}
这才是正确的写法,看来最近有很多人在学php,csdn上出现了一大批的很奇怪的php问题
foreach ($a as $a) {
echo $a[0].' <br />';
} 是正确的。。这里用$a用$b都是一样的,用$c也可以但这只对以数字为下标的数组有用,如果下标不为数字,比如$a = array('a','b','c','k'=>'d');结论就不成立了
echo $变量;/*“$变量”保存的是本次循环中的当前数组单元值。此时数组内部指针会指向下一个数组单元,下次循环中指
针指向的数组单元值再次赋给“$变量”,依次类推直到数组末尾。若当前值是个数组,再用“$变量[索引]”去
访问你想要的值。*/
}