찾다
php教程php手册深入理解PHP多维数组排序原理

深入理解PHP多维数组排序原理

Jun 13, 2016 am 11:04 AM
php사람들원칙개발하다좋다다차원우리를종류정렬연대깊이 들어가다이해하다사용~의언어함께

随着时代的发展,喜欢用PHP语言的人越来越多,我们这里就回顾一下PHP多维数组排序的功能,希望大家能得到收获。如果成功则返回 TRUE,失败则返回 FALSE。array_multisort() 可以用来一次对多个数组进行排序,或者根据某一维或多维对PHP多维数组排序。

关联(string)键名保持不变,但数字键名会被重新索引。输入数组被当成一个表的列并以行来排序――这类似于 SQL 的 ORDER BY 子句的功能。第一个数组是要排序的主要数组。数组中的行(值)比较为相同的话就按照下一个输入数组中相应值的大小来排序,依此类推。本函数的参数结构有些不同寻常,但是非常灵活。第一个参数必须是一个数组。接下来的每个参数可以是数组或者是下面列出的排序标志。

排序顺序标志:
◆SORT_ASC - 按照上升顺序排序
◆SORT_DESC - 按照下降顺序排序

排序类型标志:
◆SORT_REGULAR - 将项目按照通常方法比较
◆SORT_NUMERIC - 将项目按照数值比较
◆SORT_STRING - 将项目按照字符串比较

每个数组之后不能指定两个同类的排序标志。每个数组后指定的排序标志仅对该数组有效 - 在此之前为默认值 SORT_ASC 和 SORT_REGULAR。

例子 1. 对PHP多维数组排序

<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">ar1</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">array</font></span><span>("10", 100, 100, "a");  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">ar2</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">array</font></span><span>(1, 3, "2", 1);  </span>
</li>
<li class=""><span>array_multisort($ar1, $ar2);  </span></li>
<li class="alt"><span> </span></li>
<li class=""><span>var_dump($ar1);  </span></li>
<li class="alt"><span>var_dump($ar2);  </span></li>
<li class="">
<span></span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li>
</ol>

本例中经过排序后,第一个数组将包含 "10","a",100,100。第二个数组将包含 1,1,"2",3。第二个数组中的项目顺序完全和第一个数组中相应的项目(100 和 100)顺序一致。

<ol class="dp-xml">
<li class="alt"><span><span>array(4) {  </span></span></li>
<li class="">
<span>[0]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> string(2) "10"  </span>
</li>
<li class="alt">
<span>[1]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> string(1) "a"  </span>
</li>
<li class="">
<span>[2]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> int(100)  </span>
</li>
<li class="alt">
<span>[3]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> int(100)  </span>
</li>
<li class=""><span>}  </span></li>
<li class="alt"><span>array(4) {  </span></li>
<li class="">
<span>[0]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> int(1)  </span>
</li>
<li class="alt">
<span>[1]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> int(1)  </span>
</li>
<li class="">
<span>[2]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> string(1) "2"  </span>
</li>
<li class="alt">
<span>[3]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> int(3)  </span>
</li>
<li class=""><span>} </span></li>
</ol>



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

핫 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 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

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

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경