• 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/>';
      }
  • 相关阅读:
    codevs 1115 开心的金明
    POJ 1125 Stockbroker Grapevine
    POJ 2421 constructing roads
    codevs 1390 回文平方数 USACO
    codevs 1131 统计单词数 2011年NOIP全国联赛普及组
    codevs 1313 质因数分解
    洛谷 绕钉子的长绳子
    洛谷 P1276 校门外的树(增强版)
    codevs 2627 村村通
    codevs 1191 数轴染色
  • 原文地址:https://www.cnblogs.com/rainbow8590/p/7467920.html
Copyright © 2020-2023  润新知