How to sort a two-dimensional array in php
In development, we often need to sort data for better presentation and use. For two-dimensional arrays, sorting can be performed according to a certain data field. This article will introduce how to use PHP to sort a two-dimensional array.
1. Use the sort() function to sort a two-dimensional array
sort() is a built-in function of PHP that can sort the values in the array in ascending order. When sorting a two-dimensional array, the sort() function sorts by the first field of the array by default. For example, we have a two-dimensional array:
$arr = array( array('id'=>2,'name'=>'li', 'age'=>20), array('id'=>1,'name'=>'zhang', 'age'=>22), array('id'=>3,'name'=>'wang', 'age'=>18) );
We can use the sort() function to sort by the id field:
sort($arr); print_r($arr);
The output result is:
Array ( [0] => Array ( [age] => 18 [id] => 3 [name] => wang ) [1] => Array ( [age] => 20 [id] => 2 [name] => li ) [2] => Array ( [age] => 22 [id] => 1 [name] => zhang ) )
You can see Out, after sorting according to the id field, the elements in the array are arranged in ascending order.
2. Use the usort() function to sort the two-dimensional array
The sort() function can only sort the first field of the array. If you want to sort by other fields, you need to Use the usort() function. The usort() function needs to pass in a custom callback function to specify the sorting rules. For example, we want to sort by the age field:
function cmp($a, $b) { if ($a['age'] == $b['age']) { return 0; } return ($a['age'] <$ b['age']) ? -1 : 1; } usort($arr, "cmp"); print_r($arr);
The output result is:
Array ( [0] => Array ( [id] => 3 [name] => wang [age] => 18 ) [1] => Array ( [id] => 2 [name] => li [age] => 20 ) [2] => Array ( [id] => 1 [name] => zhang [age] => 22 ) )
It can be seen that after sorting by the age field, the elements in the array are arranged in ascending order of age.
3. Use array_multisort() function to sort two-dimensional arrays
The array_multisort() function is a very powerful sorting function that can sort two-dimensional arrays according to multiple conditions. If you want to sort by multiple fields, you can use the array_multisort() function. For example, we need to sort by the age field first. If the age is the same, then sort by the id:
$ages = array(); $ids = array(); foreach ($arr as $key => $value) { $ages[$key] = $value['age']; $ids[$key] = $value['id']; } array_multisort($ages, SORT_ASC, $ids, SORT_ASC, $arr); print_r($arr);
The output result is:
Array ( [0] => Array ( [id] => 3 [name] => wang [age] => 18 ) [1] => Array ( [id] => 2 [name] => li [age] => 20 ) [2] => Array ( [id] => 1 [name] => zhang [age] => 22 ) )
It can be seen that after sorting by the age field and the id field , the elements in the array are arranged in ascending order by age, and if the age is the same, they are arranged in ascending order by id.
Summary:
This article introduces three methods to sort two-dimensional arrays, using the sort() function, usort() function and array_multisort() function. In development, which method to choose depends on specific needs. Hope this article is helpful to everyone.
The above is the detailed content of How to sort a two-dimensional array in php. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



PHP 8's JIT compilation enhances performance by compiling frequently executed code into machine code, benefiting applications with heavy computations and reducing execution times.

The article discusses OWASP Top 10 vulnerabilities in PHP and mitigation strategies. Key issues include injection, broken authentication, and XSS, with recommended tools for monitoring and securing PHP applications.

The article discusses securing PHP file uploads to prevent vulnerabilities like code injection. It focuses on file type validation, secure storage, and error handling to enhance application security.

The article discusses symmetric and asymmetric encryption in PHP, comparing their suitability, performance, and security differences. Symmetric encryption is faster and suited for bulk data, while asymmetric is used for secure key exchange.

The article discusses implementing robust authentication and authorization in PHP to prevent unauthorized access, detailing best practices and recommending security-enhancing tools.

Article discusses retrieving data from databases using PHP, covering steps, security measures, optimization techniques, and common errors with solutions.Character count: 159

The article discusses strategies to prevent CSRF attacks in PHP, including using CSRF tokens, Same-Site cookies, and proper session management.

The article discusses the mysqli_query() and mysqli_fetch_assoc() functions in PHP for MySQL database interactions. It explains their roles, differences, and provides a practical example of their use. The main argument focuses on the benefits of usin
