首页 > 技术文章 > php数组--2017-04-16

chenguanai 2017-04-16 16:53 原文

一、定义数组

(1)索引数组

$arr=array(1,2,3,3);

(2)关联数组  类似于集合

$arr1=array("one"=>"111","two"=>"222");

(3)赋值定义数组:

$arr2["one"]="aaaa";  

注:

强类型语言数组的三个特点:

1、  数组里面只能存储同类型数据  

2、  数组的长度固定    

3、  在内存里是连续的

Php属于弱类型语言

二、数组操作

1、数组取值

(1)var_dump($arr1);

(2)$arr1["two"];

2、删除元素

unset($arr[0]);

3、添加元素

$arr2[key]=value;   

4、追加元素(在最后一个数组后面添加)

(1)$arr2[]=1; 

(2)array_push($arr,12); 

三、遍历数组 (第二种重要)

1、for循环 只能遍历索引数组

$arr=array(1,2,3,3);

for ($i=0;$i<count($arr);$i++){

       echo $arr[$i]."<br />";

       }

       $arr1=array("one"=>"111","two"=>"222");

2、foreach循环  第一次循环把1交给v,第二次把2交给v  可以遍历索引和关联数组

       /*$arr=array(1,2,3,3);

       foreach($arr as $v)

       {

              echo $v."<br />";

              }

   foreach($arr as $k=>$v)

       {

              echo $k."----".$v."<br />";

              }

 注:

(1)强类型语言   foreach(int i in arr) {}  

  (2)js     for (var a in arr){} a取出的是key

3、list()函数和each()函数结合遍历

(1)$arr=array(1,2,3,3);

var_dump(each($arr));

 取出当前指针指向的元素,返回新的数组(该数组包含key和value,,将指针向后移一个)

(2)list($a,$b,$c,$d)=$arr;  //将右侧数组的元素交给一组变量

echo $c;

 

$arr=array(1,2,3,3);

while (list($k,$v)=each($arr)){

       echo "{$k}={$v}<br />";

       }

4、指针遍历

next($arr); //将指针向后挑一个

prev($arr);  //将指针向前挑一个

reset($arr);//重置指针

end($arr);//将指针达到最后一个

echo current($arr); //取当前指针指向的元素的值

echo key($arr) //取当前指针指向的元素的//索引

do

{current($arr)      // 先执行循环体后走条件

       }

while{next($arr)

       }

注:  while循环:先走条件后走循环体  while循环无法输出第一个数,所以此处不用while循环

Eg:

while (list($k,$v)=each($arr)){

       echo "{$k}={$v}<br />";

}

reset($arr);  //  不加这个输出5个,不然10个

while (list($k,$v)=each($arr)){

       echo "{$k}={$v}<br />";

}

四、五如下:

 

推荐阅读