foreach循环遍历数组

一、foreach(array_expression  as value)  遍历给定的array_expression。每次循环中,当前单元的值被赋给$value而且数组内部的指针向前移一步(所以下一次循环将会获得下一个单元)。express

$arr = array(50,60,70,80); 
foreach($arr as $value){
    echo $value . '<br>';
}

二、foreach(array_expression  as $key => value)  作一样的事,只除了当前的单元的键名也会在每次循环中被赋给变量$key。数组

$arr = array(50,60,70,80); 
foreach ($arr as $key => $value){
   echo $key . '=>' . $value . '<br>';
}

经过foreach循环改变数组中元素的值指针

一、若是想要改变元素$value值的时候,要在$value前加上&,表示引用传递;若是只是读取元素时的时候不用加上&。加上&才能改变数组的值,不然不会改变。code

$arr = array(50,60,70,80); 
foreach($arr as &$value){
   $value += 10;
}

二、能够借助数组的键,用foreach遍历循环,经过键访问数组里的元素($arr[$key])。io

$arr = array(50,60,70,80); 
foreach($arr as $key => $value){
   $arr[$key] += 10;
}

遍历二维数组      $arr就是二维数组,$value就是二维数组中的一个元素,也是一个数组class

$arr = array();
$arr[1001] = array(1001,'张三','男',20);
$arr[1002] = array(1002,'李四','男',19);
$arr[1003] = array(1003,'王五','女',19);

foreach($arr as $value){
    foreach($value as $v){
        echo $v . '<br>';
    }
}