Home Backend Development PHP Tutorial Summary of PHP array sorting methods (Collection)

Summary of PHP array sorting methods (Collection)

Jul 25, 2016 am 08:55 AM

  1. <?php
  2. $a = array(4,"37",3,100,0,-5);
  3. sort($a);
  4. for ($i=0; $i<6; + +$i){
  5. echo $a[$i]." ";
  6. }
  7. echo "<br />";
  8. sort($a,SORT_STRING);
  9. for ($i=0; $i< 6; ++$i){
  10. echo $a[$i]." ";
  11. }
  12. echo "<br />";
  13. ?>
Copy code

Output result: -5 0 3 4 37 100 -5 0 100 3 37 4

2, descending sort: rsort(array, [sort type]) Parameter usage is the same as the sort function.

Associative array sorting: Function: asort(array, [sort type]) Description: Sort in ascending order based on the element values ​​of the associative array. Parameter usage is as shown in the sort function above.

Function: ksort(array, [sort type]) Description: Sort in ascending order based on the keys of the associative array. Parameter usage is as shown in the sort function above.

Example:

  1. <p><?php
  2. $a = array(
  3. "good" => "bad",
  4. "right" => "wrong",
  5. "boy" => "girl");</p>
  6. <p>echo "value sort<br />";
  7. asort($a);
  8. foreach($a as $key => $value){
  9. echo "$key : $value<br />";
  10. }</p>
  11. <p>echo "<br />key sort<br />";
  12. ksort($a);
  13. foreach($a as $key => $value){
  14. echo "$key : $value<br />";
  15. }
  16. ?></p>
Copy code

Output result: value sort good : bad boy : girl right : wrong

key sort boy : girl good : bad right : wrong

3, Sort in descending order: arsort(array, [sort type]) corresponds to asort krsort(array, [sort type]) corresponds to ksort

Function range() to quickly create an array

For example, the range() function can quickly create an array of numbers from 1 to 9:

  1. <?php
  2. $numbers=range(1,9);
  3. echo $numbers[1];
  4. ?>
Copy code

Of course, use range(9,1) Then an array of numbers from 9 to 1 is created. At the same time, range() can also create a character array from a to z:

  1. <?php
  2. $numbers=range(a,z);
  3. foreach ($numbers as $mychrs)
  4. echo $mychrs." ";
  5. ?>
Copy code

Pay attention to the case when using character arrays. For example, range(A,z) and range(a,Z) are different. The range() function also has a third parameter, which is used to set the step size. For example, the array elements created by range(1,9,3) are: 1, 4, 7. Common PHP array sorting Generally, each element in the array is represented by characters or numbers, so the array elements can be arranged in ascending order. This function is sort().

For example:

  1. <?php
  2. $people=array('name','sex','nation','birth');
  3. foreach ($people as $mychrs)
  4. echo $mychrs." ";
  5. sort($people);
  6. echo "<br />---After sorting---<br />";
  7. foreach ($people as $mychrs)
  8. echo $mychrs." ";
  9. ?>
Copy code

The array elements sorted in ascending order are displayed as birth name nation sex. Of course, the sort() function is case-sensitive (letters from largest to smallest are: A...Z... a…z)

The

Sort() function also has a second parameter, which is used to indicate whether the PHP array sorting rule in ascending order is used to compare numbers or strings. For example:

  1. <?php
  2. echo "---Sort in ascending numerical order---<br />";
  3. $num2=array('26','3',);
  4. sort( $num2,SORT_NUMERIC);
  5. foreach ($num2 as $mychrs)
  6. echo $mychrs." ";
  7. echo "<br />---Sort in ascending character order---<br />";
  8. $num3=array('26','3');
  9. sort($num3,SORT_STRING);
  10. foreach ($num3 as $mychrs)
  11. echo $mychrs." ";
  12. ?>
Copy code

SORT_NUMERIC and SORT_STRING are used to declare ascending order of numbers or characters. If arranged in ascending order of numbers, it is: 3, 26; but if arranged in ascending order of characters, it is: 26, 3.

In addition to the ascending function in PHP, there is also a descending or reverse sorting function, which is the rsort() function, for example: $num1=range(1,9);rsort($num1); This is actually equivalent to range( 9,1).

>>> For more information, please view the complete list of php array sorting methods



Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

11 Best PHP URL Shortener Scripts (Free and Premium) 11 Best PHP URL Shortener Scripts (Free and Premium) Mar 03, 2025 am 10:49 AM

11 Best PHP URL Shortener Scripts (Free and Premium)

Working with Flash Session Data in Laravel Working with Flash Session Data in Laravel Mar 12, 2025 pm 05:08 PM

Working with Flash Session Data in Laravel

Introduction to the Instagram API Introduction to the Instagram API Mar 02, 2025 am 09:32 AM

Introduction to the Instagram API

Simplified HTTP Response Mocking in Laravel Tests Simplified HTTP Response Mocking in Laravel Tests Mar 12, 2025 pm 05:09 PM

Simplified HTTP Response Mocking in Laravel Tests

cURL in PHP: How to Use the PHP cURL Extension in REST APIs cURL in PHP: How to Use the PHP cURL Extension in REST APIs Mar 14, 2025 am 11:42 AM

cURL in PHP: How to Use the PHP cURL Extension in REST APIs

Build a React App With a Laravel Back End: Part 2, React Build a React App With a Laravel Back End: Part 2, React Mar 04, 2025 am 09:33 AM

Build a React App With a Laravel Back End: Part 2, React

12 Best PHP Chat Scripts on CodeCanyon 12 Best PHP Chat Scripts on CodeCanyon Mar 13, 2025 pm 12:08 PM

12 Best PHP Chat Scripts on CodeCanyon

Notifications in Laravel Notifications in Laravel Mar 04, 2025 am 09:22 AM

Notifications in Laravel

See all articles