數組定義
PHP數組可以是混合數組 你的數組里面可以有數字也可以有字符串,二維數組不談一個數組里還有數組跟C有差別定義方式例如 $dd=array(array(1,2,3),array(1,2,3,4),array(1,2,3,4,5))
$arr1=array(3,4,5)默認下標0 1 2 3
$arr2=arry("a"=>3,"b"=>22)關聯數組下標為字符串
$arr3=arry("a"=>3,"b"=>22,5=>8,4)有指定下標也有 ,自動下標 此時 3的下標為aa 8的下標為5,4的下標為6(自動下標為最大數字下標加一)
$arr4[1]=3數組下標為1的值為3
數組取值
$v=$arr1[下標名字];
數組遍歷
current($array)//獲取數組的當前指針所在單元的值
key($array)//獲取當前數組指針的下標
next($array)//移到數組的下一個節點獲得其中的值
prev($array)//把數組指針移到最后一個單元然后取得該單元的值
end($array)//把數組下標直接移到最后一個
reset($array)//把數組下標直接移動到第一個
$count($array)//取得數組的長度
foreach ($數組名稱 as $key=>$value)
{
echo " $key--$value"
}
如果下標都為整數0....100可以直接用for循環 ,如果有自定義下標用到next和for循環搭配
簡單的for遍歷
$ar=array(1,2,3,4,5,);
for ($i= 0;$i< count($ar); $i++)
{
$str= $ar[$i];
echo "$str";
}
next和for循環搭配
$ar=array(1,2,3,4,5,);
for ($i= 0;$i< count($ar); $i++)
{
$key=key($ar);
$val=current($ar);
echo "$val";
next($ar);
}
each()函數作用取得一個數組當前單元的下標和值放進一個數組,然后指針后移
list()用於一次性取得一個數組中從0開始的數組下標的多個單元的值 形式:list($變量1,$變量2,$變量3)
類似於
$變量1=$數組[0]
$變量2=$數組[1]
while() 和 list(),each()配合使用。
例如
$urls= array('aaa','bbb','ccc','ddd');
while(list($key,$val)= each($urls)) {
echo "This Site url is $val.<br />";
}
意思是用each取得數組第一個下標和值,用list存放其中的下標和值,其中list($key,$val)里面的變量只是為了起的名字容易理解跟key這個函數沒關系
每次each調用之后指針自動向后移動-----因此組合可用-----平常也不用這個吧!