標籤:遍曆數組 沒有 foreach 數組使用 next array 解析 false 合數
1使用for迴圈遍曆數組
count($arr)用於統計數組元素個數
for迴圈只能用於遍曆,純索引數組!!如果存在關聯陣列,count統計兩種數組的總個數
使用for迴圈遍曆混合數組,導致數組越界
$arr=array(1,2,3,4,5,6,7);
$num=count($arr);//count最好放在for外面,可以讓函數只執行一次
for($i=0;$i<count($arr);$i++){
echo "{$i}==>{$arr[$i]}<br/>";
}
2.foreach迴圈遍曆數組(foreach可以便利任何類型數組)
例如:
$arr=array(1,2,3,5,6,7,"one"=>9);
foreach($arr as $item){
echo "{$item}<br/>";
}
foreach($arr as $key=>$item){
echo "{$key}==>{$item}<br/>";
}
3.3.使用list() ,each(),while()遍曆數組
用法:
while(list($key,$value)=each($arr)){
echo "{$key}-->{$value}<br/>";
}
list():用於將數組的每一個值,賦給list函數的每一個參數。(list函數的參數,必須小於等於 數組元素的個數)
eg:list($a,$b,$c)=[1,2,3];-->$a=1;$b=2;$c=3;
注意:①list解析數組時直解析索引數組
②list可以通過傳遞空參數選擇性解析數組的值
list($a,,$b)=[1,2,3];-->$a=1;$b=3;
each():用於返回數組當前指標所在位的索引值對!並將指標後移一位;
傳回值:如果數組有下一位則返回一個數組。包含一個索引數組(0-鍵,1-鍵)和一個關聯陣列("key"-鍵,"value"-值);
如果指標沒有下一位返回false;
③ 數組使用each()遍曆完一遍後,指標使用處於最後一位的下一位;即再用each()始終返回false
如果要再用要用reset($arr)
4.使用數組指標遍曆函數
①next:將數組指標,後移一位。並返回後一位的值;沒有返回false;
②prev:將數組指標,前移一位。並返回後一位的值;沒有返回false;
③end:將數組指標,移至最後一位。並返回後一位的值;空數組返回false;
④reset:將數組指標,恢複到第一位。並返回第一位的值;空數組返回false;
⑤key:返回當前指標所在位的鍵;
⑥current:返回當前指標所在位的值;
PHP遍曆數組常用方式(for,foreach,while,指標等等)