찾다
php教程php手册老鸟谈PHP数组排序
老鸟谈PHP数组排序Jun 13, 2016 am 11:04 AM
php한 번종류정렬비교하다용적연구아직

PHP还是比较常用的,于是我研究了一下PHP数组排序,在这里拿出来和大家分享一下,希望对大家有用。在了解了usort自定义排序后,我们再来看看sort(),这个函数可谓是数组里的排序函数的鼻祖,大家肯定发现所有的PHP数组排序函数都会带有sort作为后缀。函数原型:bool sort ( array &array [, int sort_flags] )说明:基本上每个函数都会有个可选的参数,sort也不例外。这个可选参数指明的一种习惯。

可选类型有如下几种:
◆SORT_REGULAR – 正常比较单元(不改变类型) //按照ASCII值排序(B大于a)
◆SORT_NUMERIC – 单元被作为数字来比较 //对整数和浮点数常用这种参数
◆SORT_STRING – 单元被作为字符串来比较
◆SORT_LOCALE_STRING – 根据当前的区域(locale)设置来把单元当作字符串比较

还是看个例子,来自帮助手册:

<ol class="dp-xml">
<li class="alt"><span><strong><font color="#006699"><span class="tag"></span><span class="tag-name">php</span></font></strong><span> </span></span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">fruits</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">array</font></span><span>("lemon", "orange", "banana", "apple");  </span>
</li>
<li class="alt"><span>sort($fruits);  </span></li>
<li class="">
<span>foreach ($fruits as $</span><span class="attribute"><font color="#ff0000">key</font></span><span> =</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> $val) {  </span>
</li>
<li class="alt"><span>echo "fruits[".$key."] = " . $val . "n";  </span></li>
<li class=""><span>}  </span></li>
<li class="alt">
<span></span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li>
</ol>

这个PHP数组排序的结果如下:

<ol class="dp-xml">
<li class="alt"><span><span>fruits[0] = apple  </span></span></li>
<li class=""><span>fruits[1] = banana  </span></li>
<li class="alt"><span>fruits[2] = lemon  </span></li>
<li class=""><span>fruits[3] = orange </span></li>
</ol>

大家可以发现,原来是索引为0的lemon,再排序后就变成了apple。为了保持原来的键/值不变,你可以把sort()换成asort()即可。另外这两个函数是对键进行升序的排列(a在b的前面)。如果要使其进行降序,只要使用rsort()代替即可,相对应的arsort()是保持原来的键/值的相关联性的。

下面简要介绍下ksort()函数

这个函数主要是用来对关联数组进行而存在,它的“姐妹”函数uksort()是使用自定义函数而进行比较的。一句话:ksort()对于关联级数,对键进行排序并保留键名到数据的关联。数组的自然排序,到目前为止我们所知道的排序函数要么是用默认的方式,要么按照自定义的方式进行排序。那么natsort()则使用一种人性化的排序方式来对数组进行排序。在此就不说了,实例可以查看手册,如果你手头上没有PHP帮助手册,你可以在浏览本站在线帮助手册进行查看
<ol class="dp-xml">
<li class="alt"><span><span>shuffle()//函数的使用  </span></span></li>
<li class=""><span>Shuffle()//用来对一个数组进行随机排序,这个有点像抽签,其他的就不多说了。到用的时候再看吧。  </span></li>
<li class="alt"><span>array_rand()//函数的使用  </span></li>
<li class=""><span>array_rand()//函数和shuffle()差不多,也是随机返回数组中的元素,如下调用:  </span></li>
<li class="alt"><span>array_rand ( array [, int num_req] ) //可选参数指出你要返回的个数。 </span></li>
</ol>

到此我想数组的排序我们已经有所了解了,如果还有什么"遗撼"以后再来弥补吧。


성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
php怎么把负数转为正整数php怎么把负数转为正整数Apr 19, 2022 pm 08:59 PM

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

php怎么实现几秒后执行一个函数php怎么实现几秒后执行一个函数Apr 24, 2022 pm 01:12 PM

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php字符串有没有下标php字符串有没有下标Apr 24, 2022 am 11:49 AM

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php怎么除以100保留两位小数php怎么除以100保留两位小数Apr 22, 2022 pm 06:23 PM

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

php怎么读取字符串后几个字符php怎么读取字符串后几个字符Apr 22, 2022 pm 08:31 PM

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

php怎么根据年月日判断是一年的第几天php怎么根据年月日判断是一年的第几天Apr 22, 2022 pm 05:02 PM

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php怎么替换nbsp空格符php怎么替换nbsp空格符Apr 24, 2022 pm 02:55 PM

方法:1、用“str_replace("&nbsp;","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\&nbsp\;||\xc2\xa0)/","其他字符",$str)”语句。

php怎么查找字符串是第几位php怎么查找字符串是第几位Apr 22, 2022 pm 06:48 PM

查找方法:1、用strpos(),语法“strpos("字符串值","查找子串")+1”;2、用stripos(),语法“strpos("字符串值","查找子串")+1”。因为字符串是从0开始计数的,因此两个函数获取的位置需要进行加1处理。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구