php数组的使用

<?php
    echo "<h2>--------普通数组--------</h2>";
    $arr1 = array(1,2,3,4);
    print_r($arr1);
    echo "<h2>--------关联数组--------</h2>";
    //数组也可以像js一样,混合数组
    $arr2 = array('name'=>'兔子只吃胡萝卜','age'=>19,'sex'=>'男');
    print_r($arr2);
    echo "<br/>".$arr2['age'];
    echo "<br/>".$arr2['name'];
    echo "<h2>--------多维数组--------</h2>";
    $arr3 = array(
            array('name','age','sex'),
            array('兔子只吃胡萝卜',19,'男'),
            array('兔子爱吃胡萝卜',19,'女')
        );
    for ($i=0; $i <count($arr3); $i++) { 
            for($j=0; $j<count($arr3[0]);$j++){
                echo "	".$arr3[$i][$j];
            }
            echo "<br/>";
    }
    //count()是用来求得数组的长度,相当于array.length,但是php中没有length这个属性
    echo "<h2>--------数组遍历--------</h2>";
    //php中的数组遍历,依靠的是指针的移动,
    /*
        语法:
        foreach( $数组变量名  as   【$key =>】 $value ){
               循环体;这里可以去“使用”$key 和 value;
            $key 和 $value 就是该遍历语句一次次取得的数组的每一个单元(项)的下标和对应值。
            而且,它总是从数组的开头往后按顺序取数据。
        }
        由此也可以看出,在php中也是可以变相操作指针的
        数组指针的操作方式
        1,$v1 = current($数组);        //获得数组的当做指针所在单元的“值”;
        2,$v2 = key($数组);            //获得数组的当做指针所在单元的“键”(下标);
        3,$v3 = next($数组);            //先将数组的指针移向下(后)一个单元,然后取得该新单元的值;
        4,$v4 = prev($数组);            //先将数组的指针移向上(前)一个单元,然后取得该新单元的值;
        5,$v5 = end($数组);            //先将数组的指针直接移向最后一个单元,然后取得该新单元的值;
        6,$v6 = reset($数组);            //先将数组的指针直接移向第一个单元,然后取得该新单元的值;

    */
    echo "<br/>利用foreach进行数组的遍历<br/>";
    $arr4 = array(1,2,3,4,5,6);
    foreach($arr4 as $y=>$x){
        echo "$y=>$x ";
    }
    reset($arr4);
    echo "<br/>利用普通for循环进行遍历<br/>";
    for($i=0;$i<count($arr4);$i++){
        echo key($arr4)."=>".current($arr4)."<br/>";
        next($arr4);
    }
    reset($arr4);
    echo "<h2>-------each()函数--------</h2>";
    /*
        each()函数的作用:
        先取得一个数组的“当前单元”的下标和值(并放入一个数组),然后将指针移到下一个单元。
    */
    print_r(each($arr4));//Array ( [1] => 1 [value] => 1 [0] => 0 [key] => 0 )
    echo "<br/>";
    print_r(each($arr4));//Array ( [1] => 2 [value] => 2 [0] => 1 [key] => 1 )
    echo "<br/>";
    reset($arr4);
    echo "将each添加进for遍历中<br/>";
    for($i=0;$i<count($arr4);$i++){
        print_r(each($arr4));
        echo "<br/>";
    }
    echo "<h2>------list()函数---------</h2>";
    /*        
    list()函数用于一次性取得一个数组中从0开始的数字下标的多个单元的值!
    形式:
        list($变量1,$变量2,$变量3, .. ) = $数组;
    作用:
        上述一行代码相当于如下代码:
        $变量1 = $数组[0];
        $变量2 = $数组[1];
        $变量3 = $数组[2];
        ........
    注意:这里变量的个数,要跟该数组的数字下标的单元对应,如果某个变量对应的该数字下标不存在,就会报错!
    */
    list($a,$b,$c) =  $arr4;
    echo "$a:$b:$c"."<br/>";
    list($m1,$m2,$m3,$m4) = $arr4;
    echo "$m1:$m2:$m3:$m4";
?>
原文地址:https://www.cnblogs.com/tangwanzun/p/6064763.html