php学习四:数组(一)

1.  直接赋值方式:

①   索引数组:以索引来存储数据,内存不是连续的,但是js中的内存是连续的

代码如下:

$array[0] = "11";
$array[1] = "22";
print_r($array); //通过print_r()来打印数组
echo "<br>";

  

②   关联数组:以键的形式来存储数据,内存也是不连续的

代码如下:

$array2["name"] = "房明";

$array2["age"] = 18;

print_r($array2);

echo "<br>";

  

 2. 通过array来定义数组

可通过关键字array来定义数组,如果是一个空数组,则需要用array[]的方法来向数组中添加数据

代码如下:

$array3 = array(1,2,3,4,"德玛西亚");

print_r($array3);

echo "<br>";



$array4 = array();

$array4[] = 1; //通过array[]方式向数组中添加数据

$array4[] = 2;

$array4[] = 3;

$array4[] = 4;

print_r($array4);

echo "<br>";

  

 3. 遍历数组

①   遍历索引数组:for循环遍历,但php中的数组没有length属性,需要用到count个数

代码如下:

for($i=0;$i<count($array4);$i++) {  //count表示数组里面数值的个数,php里面没有数组长度

    echo $array4[$i];

}

  

 

②   遍历关联数组:使用foreach来遍历,还可遍历关联函数和索引函数的而混合体

代码如下:

foreach($array2 as $key => $obj){

    echo $key."=".$obj."<br>";

}

  

此时的foreach格式为(数组名 as 键 => 值);

4.list()

//按索引角标顺序来进行解构,但是角标必须从0开始,并且是连续的

//只对索引数组有效,当遇到关联数组会直接跳过

$array5 = array("name" => "zhangsan",0 => "lisi",1 =>"wangwu");
list($a,$b) = $array5;
echo $a." ".$b;  //结果为lisi,wangwu

  

5.each()

//会返回第一个键值对的一个数组(索引和关联数组的混合形式),

//当第二次调用是,游标会自动到下一个,即第二个键值对数组;

$array6 = array("name" => "fangming",0 => "18", "sex" => "man");
$iem1 = each($array6);
print_r($iem1);
echo "<br>";
$iem2 = each($array6);
print_r($iem2);

  

6.list,each结合使用

list($a,$b) = each($array6);
echo $a.":".$b."<br>";

  

7.利用while循环结合list,each进行遍历

$array7 = array("name" => "fangming","age" => "18", "sex" => "man");
while(list($a,$b) = each($array7)){
    echo $a.":".$b."<br>";
};

  

8.reset,重置数组,使游标返回第一位

reset($array7);

  

原文地址:https://www.cnblogs.com/mmykdbc/p/6556905.html