PHP&MySQL(三)——数组

时间:2023-03-10 04:12:33
PHP&MySQL(三)——数组

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

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

 <?php
//PHP数组其实能创建很多种数据结构,列表,堆栈,队列,树等
//数组创建array_fill
$start_index=1;
$num=10;
$value="fuck";
$array1=array_fill($start_index, $num, $value); print_r($array1);echo "<hr/>"; print count($array1); echo "<br/>"; //count计数实现,返回一个数,代表数组长度
//print_r(array_count_values($array1)); //移除元素
unset($array1[3]);
$array2=$array1;
//unset($array1);
print_r($array1);echo "<hr/>"; $start="a";
$limit="z";
$array_letters=range($start, $limit);
print_r($array_letters);echo "<hr/>"; //异构数组,即数组中有各种类型的
$array_yigou=array("fuck",1,23.343,false);
var_dump($array_yigou);echo "<hr/>"; //多维数组
$array_dimensions=array($array1,$array_yigou);
var_dump($array_dimensions);
echo $array_dimensions[1][2];echo "<hr/>"; $array_complicated=array($array_dimensions,$array_yigou);
var_dump($array_complicated);echo "<hr/>"; //foreach,一开始我理解上有点问题,foreach本来就是一个循环了!!!
foreach ($array1 as $person => $saying){
print "No.".$person." says ".$saying."!"."<br/>";
} //比较适合foreach理解的一种方式
foreach ($array1 as $person => $saying){
print "No.".$person." said ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
} echo "<hr/>"; //数组计数
//array_count_values返回一个数组,统计(!!)每个value的个数
$array1Value=array_count_values($array1);
print_r($array1);echo "<br/>";
print $array1Value["fuck"];
//count计数的是“个体”的数目吧
print "There is ".count($array_letters)." letters."; echo "<hr/>"; //神奇的explode和implode
//就是字符串的拆解和安装
//注意一定要有glue或者什么,不能不输入
$sentence="What is your name?";
$explode_demo=explode(" ", $sentence);
var_dump($explode_demo);
var_dump(implode(" ", $explode_demo));echo "<hr/>"; //数组元素搜索判断
//in_array判断是否存在,array_search返回在哪里
echo in_array("fuck", $array1);
$check_list="fuck you";
var_dump(in_array($check_list, $array1));
//in_array第三个参数为严格检查类型,默认为false
$check_list2="1 is in here";
var_dump(in_array($check_list2, $array_yigou,false));
var_dump(in_array($check_list2, $array_yigou,true)); print array_search("fuck", $array1);
print array_search(1, $array_yigou);
//array_key_exists判断key是不是存在
echo "<hr/>"; //直接利用key或value
var_dump(array_keys($array1));
var_dump(array_values($array_dimensions));echo "<hr/>"; //implode和array_merge
var_dump(implode(" ", $array1));echo "<hr/>";
var_dump(array_merge($array1,$array_letters)); //数组排序
//注意排序之后,直接改变/返回到原数组
//sort升rsort降
//这里也是我第一次对PHP语言有理解的地方,各种封装好的函数,需要的就是多用,知道,然后熟练的调用
//自己编写的排序函数,往往没有其自带的/现成的函数效率/效果好
$array_num=range(2, 123,3);
print_r($array_num);echo "<hr/>";
rsort($array_num);
print_r($array_num);
sort($array_letters);
var_dump($array_dimensions);echo "<hr/>";
//关联数组,若想保持键值的关系不变,应该用asort
sort($array_yigou);
var_dump($array_yigou);
rsort($array_yigou,SORT_NUMERIC);
var_dump($array_yigou);
asort($array_yigou);
var_dump($array_yigou);
//ksort是根据key值来排序的 //总结_数组
//数组创建——array(),array_fill(),range()
//数组输出——var_dump,print_r
//数组种类——索引数组,关联数组;异构数组,多维数组
//数组排序——sort(),rsort(),asort(),ksort()
//foreach的使用
//implode(),explode()
//is_array,in_array,array_search
//array_count_values,count