PHP程序设计基础(微课版)(第2版)课件 6.PHP数组检索与排序_第1页
PHP程序设计基础(微课版)(第2版)课件 6.PHP数组检索与排序_第2页
PHP程序设计基础(微课版)(第2版)课件 6.PHP数组检索与排序_第3页
PHP程序设计基础(微课版)(第2版)课件 6.PHP数组检索与排序_第4页
PHP程序设计基础(微课版)(第2版)课件 6.PHP数组检索与排序_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数组检索函数和排序函数陈学平7数组检索函数018数组排序函数02目录017数组检索函数7数组检索函数1.array_keys()函数用于获取数组中所有的键名,返回值为数组。实例24使用array_keys()函数获取数组的键名实例代码如下:<?php$array=array(0=>100,"php"=>"图书");$arr1=array_keys($array);print_r($arr1);//这里应该输出Array([0]=>0,[1]=>php)7数组检索函数$array=array("php","asp","java","php");$arr2=array_keys($array,"php");print_r($arr2);//输出Array([0]=>0,[1]=>3)?>2.array_values()函数用于返回数组中所有的值并给其建立数字索引。即使原来有数字索引也会被清除,从0重新开始实例25使用array_values()函数返回值并建立数字索引实例代码如下:7数组检索函数<?php$array=array("手册"=>"php手册","php应用","php"=>"php手册","php应用","php案例");$result=array_values($array);print_r($result);?>运行结果应该是:Array([0]=>php手册[1]=>php应用[2]=>PHP手册[3]=>php应用[4]=>php案例)7数组检索函数3.in_array()函数在数组中检测某个值是否存在,找到存在则返回true,否则false。实例26使用in_array()函数检测某一个值是否存在实例代码如下:<?php$array=array("Php","asP","jAva","html");if(in_array("php",$array)){echo"phpinarray";//检索字符串时会区分大小写}7数组检索函数if(in_array("Java",$array)){echo"JAvainarray";}echo‘<br>’;$arr=array("100",200,300);if(in_array("200",$arr,TRUE)){//TRUE会要求数组值的类型也相同,区分字符类型echo"200inarr";}if(in_array(300,$arr,TRUE)){7数组检索函数echo"300inarray";}?>运行结果应该是:300inarray4.array_search()函数用于在数组中具体搜索某个给定的值,若找到则返回键名,否则返回false。实例27使用array_search()函数搜索某一个值实例代码如下:<?php$arr=array("php","asp","60");7数组检索函数if(array_search(60,$arr)){echo"数组中有60"<br>;}else{echo"数组中没有60<br>";}if(array_search(60,$arr,true)){//加上true选项,区分数据类型。echo"数组中有60<br>";}else{echo"数组中无60<br>";}?>7数组检索函数运行结果应该是:数组中有60数组中无605.array_key_exists()函数检查数组中是否存在给定的某键名/索引,若存在,则返回true实例28使用array_key_exists()函数检查给定的键名、索引实例代码如下:<?php$array=array("php"=>58,"ajax"=>54);7数组检索函数if(array_key_exists("php",$array)){echo"php这个键名存在于数组中";}?>运行结果php这个键名存在于数组中6.array_unique()函数删除数组中的重复元素,该函数会先将数组中的所有值作为字符串排序,然后每个值只保留一个。实例29使用array_unique()函数删除重复元素实例代码如下:<?php$arr_int=array("PHP","JAVA","ASP","PHP","ASP");$result=array_unique($arr_int);运行结果print_r($result);?>运行结果应该是:Array([0]=>"PHP"[1]=>"JAVA"[2]=>"ASP");010203028数组排序函数sort()函数将数组元素值以升序排序,并为排序后的数组赋予新的整数键名索引。实例30使用sort()函数将数组元素升序排列并变为新数组实例代码如下:<?php$array=array("a"=>"asp","p"=>"php","j"=>"jsp");sort($array);print_r($array);//输出的数组还是$array,也就是说sort()将数组array处理替换成了新的数组。?>运行结果就应该是:Array([0]=>"asp"[1]=>"jsp"[2]=>"php")2.asort()函数2.asort()函数与sort()函数相类似,区别在于排序后会保持数组元素原有的键值对的对应关系。实例31使用asort()函数排序并保持原有的键值对对应实例代码如下:<?php$array=array("a"=>"asp","p"=>"php","j"=>"jsp");asort($array);print_r($array);?>运行结果如下:Array([a]=>"asp"[j]=>"jsp"[p]=>"php")3.rsort()和arsort()函数

4.ksort()和krsort()函数3.rsort()和arsort()函数rsort()函数与sort()函数的语法格式相同,arsort()函数与asort()函数的语法格式相同;区别之处在于rsort()和arsort()函数是按照降序排列的。4.ksort()和krsort()函数根据数组元素的键名按照升序/降序排序,排序后保持数组元素原有的“键值对对应关系”实例32使用ksort()和krsort()函数进行升序/降序排序实例代码如下:<?php$array1=array("a"=>"asp","p"=>"php","j"=>"jsp");ksort($array1);print_r($array1);echo'<br>';$array2=array("a"=>"asp","p"=>"php","j"=>"jsp");krsort($array2);print_r($array2);?>运行结果就应该是:5.natsort()和natcasesort()函数Array([a]=>"asp"[j]=>"jsp"[p]=>"php")Array([p]=>"php"[j]=>"jsp"[a]=>"asp")5.natsort()和natcasesort()函数以自然排序算法对数组元素的值进行升序/降序排序。排序后保持数组元素原有的“键值对”对应关系。实例33使用natsort()和natcasesort()函数自然排序法排序实例代码如下:<?php$array1=array("index1","Index11","index2");natsort($array1);print_r($array1);echo'<br>';$array2=array("index1","Index11","index2");natcasesort($array2);print_r($array2);?>运行结果应该是这样的:Array([1]=>Index11[0]=>index1[2]=>index2)//“键值对对应关系不变”升序Array([0]=>index1[2]=>index2[1]=>Index11)//“键值对对应关系不变”降序6.shuffle()函数6.shuffle()函数对数组中的元素进行随机排序,随机排序后的数组将会被赋予新的“整数键名”。实例34使用shuffle()函数进行随机排序实例代码如下:<?php$array=array("a"=>"asp","p"=>"php","j"=>"jsp");shuffle($array);print_r($array);?>运行结果是什么?是随机的排序7.array_reverse()函数7.array_reverse()函数返回一个和数组元素顺序相反的新数组。实例35使用array_reverse()函数返回新数组实例代码如下:<?php$arr=array("asp","php","jsp");$result=array_reverse($arr);//不保留原有的“键值对”对应关系prin

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论