PHP 배열을 정렬할 수 있습니다. PHP에는 다양한 배열 정렬 기능이 있습니다: 1. "sort(array)" 구문을 사용하여 오름차순으로 정렬할 수 있는 sort() 2. 다음 구문을 사용하여 내림차순으로 정렬할 수 있는 rsort(); "rsort(array)"; 3. shuffle( )은 무작위로 정렬될 수 있으며 구문은 "shuffle(array)"입니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터
PHP 배열을 정렬할 수 있습니다.
php는 다양한 배열 정렬 요구 사항(키 값, 키 이름, 오름차순, 내림차순 등)에 맞는 다양한 내장 기능을 제공합니다.
1. 오름차순으로 배열 정렬
PHP에는 일반적으로 사용되는 세 가지 배열 오름차순 정렬 함수가 있습니다.
sort(): 배열 요소를 오름차순으로 정렬
asort() : 연관에 따라 배열의 키 값을 오름차순으로 정렬
ksort(): 연관 배열의 키 이름에 따라 오름차순으로 정렬
1을 사용합니다. sort() 함수
배열을 오름차순으로 정렬하는 sort() 함수 배열 요소는 오름차순(작은 것에서 큰 것, 낮은 것에서 높은 것)으로 정렬됩니다.
<?php header("Content-type:text/html;charset=utf-8"); $arr1 = array(10, 23, 5, 12, 84, 16); sort($arr1); var_dump($arr1); $arr2= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); sort($arr2); var_dump($arr2); ?>
출력:
출력 결과:sort() 함수에는 $array(필수) 및 $sortingtype(생략 가능)의 두 가지 매개 변수가 있습니다.
그 중 $sortingtype 매개변수는 함수 정렬 모드를 정의하고 배열의 요소/항목을 비교하는 방법을 지정하는 데 사용됩니다. 기본값은 "SORT_REGULAR"입니다.
$sortingtype 매개변수는 다음 값으로 설정할 수 있습니다.
0 = SORT_REGULAR: 유형을 변경하지 않고 배열 요소를 정상적으로 비교합니다(기본값)
1 = SORT_NUMERIC: 배열 요소를 숫자로 처리합니다.
- 2 = SORT_STRING: 배열 요소를 문자열로 처리합니다.
- 3 = SORT_LOCALE_STRING: 현재 로캘(setlocale()로 변경 가능)을 기반으로 배열 요소를 문자열로 비교합니다.
- 4 = SORT_NATURAL: natsort()와 유사하며 각 배열 요소에 대해 "자연 순서"로 문자열을 정렬합니다. 이는 PHP5.4.0의 새로운 기능입니다.
- 5 = SORT_FLAG_CASE: SORT_STRING 또는 SORT_NATURAL(OR 비트 연산)과 결합할 수 있으며 대소문자를 구분하지 않는 정렬 문자열입니다.
<?php header("Content-type:text/html;charset=utf-8"); $arr1 = array(10, 23, 5, 12, 84, 16); sort($arr1,2); var_dump($arr1); $arr2= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); sort($arr2,1); var_dump($arr2); ?>로그인 후 복사
<?php header("Content-type:text/html;charset=utf-8"); $age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16); sort($age); var_dump($age); ?>
2. asort() 함수를 사용하세요.
asort() 함수는 연관 배열을 키 값을 기준으로 오름차순으로 정렬하며 원래 배열의 키 이름을 수정하지 않습니다.header("Content-type:text/html;charset=utf-8"); $age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16); asort($age); var_dump($age); ?>
asort() 함수에도 두 개의 매개변수가 있습니다. 매개변수 값은 sort() 함수와 동일하므로 참고하시면 됩니다.
3. ksort() 함수를 사용하세요.
ksort() 함수는 연관 배열을 키 이름에 따라 오름차순으로 정렬하며 원래 배열의 키 이름을 수정하지 않습니다.<?php header("Content-type:text/html;charset=utf-8"); $age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16); ksort($age); var_dump($age); ?>
<?php header("Content-type:text/html;charset=utf-8"); $arr= array("l"=>"lemon", "o"=>"orange", "b"=>"banana", "a"=>"apple"); ksort($arr); var_dump($arr); ?>
ksort() 함수에도 두 개의 매개변수 값이 있으며, sort() 함수와 동일하므로 참고하시면 됩니다. .
2. 내림차순으로 배열 정렬
PHP에는 일반적으로 사용되는 세 가지 배열 내림차순 정렬 함수가 있습니다.1을 사용합니다. rsort() 함수
rsort() 함수 배열 요소를 내림차순, 즉 큰 것에서 작은 것, 높은 것에서 낮은 것 순으로 정렬하는 데 사용됩니다. 코드 예제를 살펴보겠습니다:<?php header("Content-type:text/html;charset=utf-8"); $arr = array(2, 1, 5, 16, 29, 15); rsort($arr); var_dump($arr); ?>
rsort() 函数有两个参数:$array(必须)和$sortingtype(可省略)。$sortingtype参数用于表示排序模式,具体取值可以参考上篇文章的sort()函数。下文arsort()和krsort()同样参考sort()函数。
<?php header("Content-type:text/html;charset=utf-8"); $arr = array(2, 1, 5, 16, 29, 15); rsort($arr,2); var_dump($arr); ?>
输出结果:
rsort()和sort()函数一样,都不会保持索引关系,会删除数组中原有的键名,并为其重新赋值;因此不适合用于注重值和索引间关系的数组。
2、使用arsort()函数
arsort()函数会根据关联数组的键值进行降序排序,且不会修改原数组中的键名。
<?php header("Content-type:text/html;charset=utf-8"); $age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16); arsort($age); var_dump($age); arsort($age,2); var_dump($age); ?>
输出结果:
3、使用krsort()函数
krsort()函数会根据关联数组的键名进行降序排序,也不会修改原数组中的键名。
<?php header("Content-type:text/html;charset=utf-8"); $arr= array("l"=>"lemon", "o"=>"orange", "b"=>"banana", "a"=>"apple"); krsort($arr); var_dump($arr); krsort($arr,1); var_dump($arr); ?>
输出结果:
3、随机排序
在PHP中,可以使用shuffle()函数随机排序,打乱数组元素。
shuffle()函数会把数组中的元素按随机顺序重新排列。
<?php header("Content-type:text/html;charset=utf-8"); $arr1 = array(10, 23, 5, 12, 84, 16); shuffle($arr1); var_dump($arr1); $arr2= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); shuffle($arr2); var_dump($arr2); ?>
输出结果:
刷新一下,结果就改变了:
说明:shuffle()函数不仅会将数组随机打乱,还会删除数组中原有的键名,并为其赋与新的数值键名(即不会保持索引关系)。
推荐学习:《PHP视频教程》
위 내용은 PHP 배열을 정렬할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!