zoukankan      html  css  js  c++  java
  • PHP&MySQL(三)——数组

      前一段忙着比赛忙着找实习,最后一地鸡毛,就是长长教训罢了。。。。

    看书还是多必须的,试着高效的、踏实的做吧!!

      1 <?php
      2 //PHP数组其实能创建很多种数据结构,列表,堆栈,队列,树等
      3 //数组创建array_fill
      4 $start_index=1;
      5 $num=10;
      6 $value="fuck";
      7 $array1=array_fill($start_index, $num, $value); 
      8 
      9 
     10 print_r($array1);echo "<hr/>";
     11 
     12 print count($array1); echo "<br/>"; //count计数实现,返回一个数,代表数组长度
     13 //print_r(array_count_values($array1));
     14 
     15 //移除元素
     16 unset($array1[3]);
     17 $array2=$array1;
     18 //unset($array1);
     19 print_r($array1);echo "<hr/>";
     20 
     21 $start="a";
     22 $limit="z";
     23 $array_letters=range($start, $limit);
     24 print_r($array_letters);echo "<hr/>";
     25 
     26 //异构数组,即数组中有各种类型的
     27 $array_yigou=array("fuck",1,23.343,false);
     28 var_dump($array_yigou);echo "<hr/>";
     29 
     30 //多维数组
     31 $array_dimensions=array($array1,$array_yigou);
     32 var_dump($array_dimensions);
     33 echo $array_dimensions[1][2];echo "<hr/>";
     34 
     35 $array_complicated=array($array_dimensions,$array_yigou);
     36 var_dump($array_complicated);echo "<hr/>";
     37 
     38 //foreach,一开始我理解上有点问题,foreach本来就是一个循环了!!!
     39 foreach ($array1 as $person => $saying){
     40     print "No.".$person." says ".$saying."!"."<br/>";
     41 }
     42 
     43 //比较适合foreach理解的一种方式
     44 foreach ($array1 as $person => $saying){
     45     print "No.".$person." said ".$saying."!"."<br/>";
     46     print "No.".$person." says ".$saying."!"."<br/>";
     47     print "No.".$person." says ".$saying."!"."<br/>";
     48     print "No.".$person." says ".$saying."!"."<br/>";
     49     print "No.".$person." says ".$saying."!"."<br/>";
     50     print "No.".$person." says ".$saying."!"."<br/>";
     51     print "No.".$person." says ".$saying."!"."<br/>";
     52     print "No.".$person." says ".$saying."!"."<br/>";
     53     print "No.".$person." says ".$saying."!"."<br/>";
     54     print "No.".$person." says ".$saying."!"."<br/>";
     55 }
     56 
     57 echo "<hr/>";
     58 
     59 //数组计数
     60 //array_count_values返回一个数组,统计(!!)每个value的个数
     61 $array1Value=array_count_values($array1);
     62 print_r($array1);echo "<br/>";
     63 print $array1Value["fuck"];
     64 //count计数的是“个体”的数目吧
     65 print "There is ".count($array_letters)." letters.";
     66 
     67 echo "<hr/>";
     68 
     69 //神奇的explode和implode
     70 //就是字符串的拆解和安装
     71 //注意一定要有glue或者什么,不能不输入
     72 $sentence="What is your name?";
     73 $explode_demo=explode(" ", $sentence);
     74 var_dump($explode_demo);
     75 var_dump(implode(" ", $explode_demo));echo "<hr/>";
     76 
     77 //数组元素搜索判断
     78 //in_array判断是否存在,array_search返回在哪里
     79 echo in_array("fuck", $array1);
     80 $check_list="fuck you";
     81 var_dump(in_array($check_list, $array1));
     82 //in_array第三个参数为严格检查类型,默认为false
     83 $check_list2="1 is in here";
     84 var_dump(in_array($check_list2, $array_yigou,false));
     85 var_dump(in_array($check_list2, $array_yigou,true));
     86 
     87 print array_search("fuck", $array1);
     88 print array_search(1, $array_yigou);
     89 //array_key_exists判断key是不是存在
     90 echo "<hr/>";
     91 
     92 //直接利用key或value
     93 var_dump(array_keys($array1));
     94 var_dump(array_values($array_dimensions));echo "<hr/>";
     95 
     96 //implode和array_merge
     97 var_dump(implode(" ", $array1));echo "<hr/>";
     98 var_dump(array_merge($array1,$array_letters));
     99 
    100 //数组排序
    101 //注意排序之后,直接改变/返回到原数组
    102 //sort升rsort降
    103 //这里也是我第一次对PHP语言有理解的地方,各种封装好的函数,需要的就是多用,知道,然后熟练的调用
    104 //自己编写的排序函数,往往没有其自带的/现成的函数效率/效果好
    105 $array_num=range(2, 123,3);
    106 print_r($array_num);echo "<hr/>";
    107 rsort($array_num);
    108 print_r($array_num);
    109 sort($array_letters);
    110 var_dump($array_dimensions);echo "<hr/>";
    111 //关联数组,若想保持键值的关系不变,应该用asort
    112 sort($array_yigou);
    113 var_dump($array_yigou);
    114 rsort($array_yigou,SORT_NUMERIC);
    115 var_dump($array_yigou);
    116 asort($array_yigou);
    117 var_dump($array_yigou);
    118 //ksort是根据key值来排序的
    119 
    120 //总结_数组
    121 //数组创建——array(),array_fill(),range()
    122 //数组输出——var_dump,print_r
    123 //数组种类——索引数组,关联数组;异构数组,多维数组
    124 //数组排序——sort(),rsort(),asort(),ksort()
    125 //foreach的使用
    126 //implode(),explode()
    127 //is_array,in_array,array_search
    128 //array_count_values,count
  • 相关阅读:
    机器不学习:如何处理数据中的「类别不平衡」?
    机器不学习:一种提升预测能力的方法-机器学习模型
    机器不学习:CNN 入门讲解1-什么是卷积
    机器不学习:浅析深度学习在实体识别和关系抽取中的应用
    机器不学习:用神经模块网络学习推理
    机器不学习:初识迁移学习
    机器不学习:一文彻底读懂智能对话系统
    跟随鼠标的div
    回到顶部的流畅滚动——scrollTop
    js学习小笔记
  • 原文地址:https://www.cnblogs.com/andy1202go/p/5334643.html
Copyright © 2011-2022 走看看