PHP数组

一、定义数组

  关键词定义 $arr = array(11,2,3,4,5);

  赋值定义  $arr[0]=1;$arr[1]=2;

  关联数组,自定义索引的数组,

    $arr = array("code"=>"p001","name"=>"张三");

    取值方法,$arr["name"];

 

二、遍历数组,设数组

$arr = array("p001","张三",1,"n001","1987-08-09");

    要将数组内元素依次逐行排列出来,

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

for($i=0;$i<count($arr);$i++){
            ehco "{$arr[$i]<br>}";
        }

  2.foreach循环遍历,不仅可以遍历索引数组,还可以遍历关联数组

foreach($arr as $v){      //每一次循环都把元素的值交给变量$v
            ehco "{$v}<br>"
        }

    如果需要索引值

foreach($arr as $k=>$v){      //每一次循环都把索引值交给变量$k,把元素的值交给变量$v
            ehco "{$k}-{$v}<br>"
        }

  3.list()和each()函数配合遍历数组,

    $a1 = each($arr); 取出数组当前指针指向元素的内容交给一个小数组,

    list($a,$b,$c) = $arr; 将数组里的元素赋值给一组变量,

while(list($k,$v)=each($arr)){    //用while循环依次取出每一个元素的索引和值
            echo "{$k}-{$v}<br>";
        }

  4.指针遍历,

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

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

    next($arr);   指针往下调一个

    prev($arr);   指针往上调一个

    end();   指针指向最后一个元素

    reset();   指针重置指向第一个

do{
            echo key($arr);
            echo current($arr);
        }while(next($arr))  //do while循环先执行代码再判断条件进入循环

 

三、二维数组,指数组里面的元素包含数组,如

$arr = array(
        array(1,2,3),
        array(4,5,6),
        array(7,8,9)
    );        //数组里的三个元素是三个小数组

  取值5 方法 $arr[1][1],先取第二个数组再取其第二的元素,

  遍历二维数组需要foreach嵌套,

foreach($arr as $v){    //$v代表每一个小数组
            foreach($v as $v1){    //$v1代表$v中每一个元素
                echo "{$v1}<>br";
            }
        }

 

四、常用函数,设数组

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

 

   in_array(6,$arr);    //判断6是否在数组$arr中,返回true或false
    array_reverse($arr);    //翻转数组,
    array_unique($arr);     //去重,
    unset($arr[1]);     //删除数组元素    
    array_values        //重新索引,索引重新排列
    array_push($arr,6)        //追加元素,追加的元素在最后面

 

posted @ 2018-01-07 11:59  黑山大胖子  阅读(165)  评论(0编辑  收藏  举报