PHP 数组(array)

数组

创建数组:
  <?php 
    header("Content-type","text/html;charset=utf8");
    
    第一种方式:
    $userArray = array("aa","bb","cc");
    echo $userArray[0];
    echo print_r($userArray);
    echo "<br/>";
    for($i = 0 ; $i < $userArray.length; $i++){
      echo $userArray[$i]
    }

    第二种方式:
    $ary = range(1,10);
    echo print_r($ary);
    echo "<br/>";
    $arys = range('a','z');
    echo print_r($arys);

  ?>

  判断是否是数组: is_array($ary)

数组长度: 
  count(var)  获取数组变量的属性的个数 
  sizeof(var) 获取数组中元素的个数
  array_count_values 统计数组中所有值出现的次数

遍历数组:
  for():遍历下标从0开始的数组
  foreach:遍历任何数组

  for($i = 0 ; $i < sizeof($userArray); $i++){
    echo $userArray[$i];
    echo "<br/>";
  };
  
  foreach($userArray as $value){
    echo $value;
    echo "<br/>";
  }
  foreach($userArray as$key => $value){
    echo $key.'--'.$value.'<br/>';
  }
自定义键数组
  $ary = array("aa" => "aaaaaa","bb" => "bbbbbb");
  echo print_r($ary);
  echo '<br/>';
  foreach($ary as $key => $value){
    echo $key .'---'. $value;
    echo '<br/>';
  }

  each(): 返回数组中当前的键/值,并将数组指针向前移动一步


  list(): 将数组中的值赋给一些变量,数组的下标只能是数字;
  $arys = ['aa','bb','cc'];
  list($a1,$a2) = $arys;
  echo $a1; //aa
  echo $a2; //bb
数组的操作
  $ary = array('aa')
  增加:$ary[count($ary)] = 'bb';
  array_unique($ary): 移除数组中重复的值;返回一个新数组;
  array_flip($ary): 交换数组中的键和值的位置
  sort($ary):按字母的升序进行排序,对原数组进行操作
  ksort($ary):按照键进行排序;
  asort($ary):排序后保持键和值的对应关系;
  shuffle($ary):随机排序
  array_reverse($ary):对数组反向排序
  array_unshift:向数组开头添加元素
  array_push:向数组末尾添加元素
  array_pop:删除数组末尾最后一个元素
  array_shift:删除数组开头第一个元素
  array_rand($ary,2):返回数组的一个或多个键(参数指定个数)
  current():返回数组中当前的元素(默认指针指向第一个)
  next():返回数组中当前指针的指向下一个元素
  reset():将指针指向第一个元素
  prev():返回数组中当前指针的指向上一个元素

  extract():将数组转换成标量变量
  $arys = array('a'=>'apple','b'=>'banner','c'=>'orange');
  extract($arys);
  echo $a; // apple
  echo $b; // banner
  echo $c; // orange
多维数组
  $arys = array(
    array("aa",1,11),
    array("bb",2,22),
    array("cc",3,33),
    array("dd",4,44)
  )
   for($i = 0 ; $i < count($arys);$i++){
    for($j = 0 ; $j < count($arys[$i]);$j++){
       echo $arys[$i][$j].'|';
    }
  }
  $aryss = array(
    array("name"=>"aa","age"=>1,"size"=>11),
    array("name"=>"bb","age"=>2,"size"=>22),
    array("name"=>"cc","age"=>3,"size"=>33),
    array("name"=>"dd","age"=>4,"size"=>44)
  );
  for($i = 0; $i < count($aryss);$i++){
    $cur = $aryss[$i];
    foreach($cur as $key => $value){
      echo $key .'---'.$value.'|';
    }
    echo '<br/>';
  }

  for($i = 0; $i < count($aryss);$i++){
    $cur = $aryss[$i];
    while(!!list($key,$value) = each($cur)){
      echo $key.'----'.$value.'|';
    }
    echo '<br/>';
  }
posted @ 2017-09-02 21:19  rainbow8590  阅读(172)  评论(0编辑  收藏  举报