Các hàm sắp xếp (sort) mảng trong PHP

Đây là bài 24/53 bài của series môn học Lập trình Web PHP

Trong bài này, chúng ta sẽ tìm hiểu cách sử dụng các hàm sắp xếp (sort) mảng trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP.

Các phần tử trong mảng có thể được sắp xếp theo thứ tự bảng chữ cái. Hoặc sắp xếp theo thứ tự số tăng dần/giảm dần. PHP hỗ trợ một số hàm sắp xếp (sort) mảng như:

1. Hàm sort() trong PHP

Hàm sort() có chức năng sắp xếp các phần tử trong mảng theo thứ tự tăng dần theo bảng chữ cái hoặc chữ số.

<?php
$names = array("Son", "John", "Kane", "Mary", "Terry");
sort($names);
//Array ( [0] => John [1] => Kane [2] => Mary [3] => Son [4] => Terry ) 
print_r($names);
$nums = array(8, 2, 9, 4, 1);
sort($nums);
//Array ( [0] => 1 [1] => 2 [2] => 4 [3] => 8 [4] => 9 )
print_r($nums);
?>

2. Hàm rsort() trong PHP

Hàm rsort() có chức năng sắp xếp các phần tử trong mảng theo thứ tự giảm dần theo bảng chữ cái hoặc chữ số.

<?php
$names = array("Son", "John", "Kane", "Mary", "Terry");
rsort($names);
//Array ( [0] => Terry [1] => Son [2] => Mary [3] => Kane [4] => John )
print_r($names);
$nums = array(8, 2, 9, 4, 1);
rsort($nums);
//Array ( [0] => 9 [1] => 8 [2] => 4 [3] => 2 [4] => 1 )
print_r($nums);
?>

3. Hàm asort() trong PHP

Hàm asort() có chức năng sắp xếp các phần tử trong mảng kết hợp (associative array) theo thứ tự tăng dần của các value.

<?php
$ages = array("Son"=>30, "John"=>21, "Kane"=>29, "Mary"=>41, "Terry"=>19);
asort($ages);
print "<pre>";
print_r($ages);
print "</pre>";

$capitals = array("VietNam"=>"Hanoi", "Japan"=>"Tokyo", "Canada"=>"Ottawa", 
                  "Qatar"=>"Doha", "England"=>"London");
asort($capitals);
print "<pre>";
print_r($capitals);
print "</pre>";
?>
Kết quả
Array
(
    [Terry] => 19
    [John] => 21
    [Kane] => 29
    [Son] => 30
    [Mary] => 41
)
Array
(
    [Qatar] => Doha
    [VietNam] => Hanoi
    [England] => London
    [Canada] => Ottawa
    [Japan] => Tokyo
)

4. Hàm ksort() trong PHP

Hàm ksort() có chức năng sắp xếp các phần tử trong mảng kết hợp (associative array) theo thứ tự tăng dần của các key.

<?php
$ages = array("Son"=>30, "John"=>21, "Kane"=>29, "Mary"=>41, "Terry"=>19);
ksort($ages);
print "<pre>";
print_r($ages);
print "</pre>";

$capitals = array("VietNam"=>"Hanoi", "Japan"=>"Tokyo", "Canada"=>"Ottawa", 
                  "Qatar"=>"Doha", "England"=>"London");
ksort($capitals);
print "<pre>";
print_r($capitals);
print "</pre>";
?>
Kết quả
Array
(
    [John] => 21
    [Kane] => 29
    [Mary] => 41
    [Son] => 30
    [Terry] => 19
)
Array
(
    [Canada] => Ottawa
    [England] => London
    [Japan] => Tokyo
    [Qatar] => Doha
    [VietNam] => Hanoi
)

5. Hàm arsort() trong PHP

Hàm arsort() có chức năng sắp xếp các phần tử trong mảng kết hợp (associative array) theo thứ tự giảm dần của các value.

<?php
$ages = array("Son"=>30, "John"=>21, "Kane"=>29, "Mary"=>41, "Terry"=>19);
arsort($ages);
print "<pre>";
print_r($ages);
print "</pre>";

$capitals = array("VietNam"=>"Hanoi", "Japan"=>"Tokyo", "Canada"=>"Ottawa", 
                  "Qatar"=>"Doha", "England"=>"London");
arsort($capitals);
print "<pre>";
print_r($capitals);
print "</pre>";
?>
Kết quả
Array
(
    [Mary] => 41
    [Son] => 30
    [Kane] => 29
    [John] => 21
    [Terry] => 19
)
Array
(
    [Japan] => Tokyo
    [Canada] => Ottawa
    [England] => London
    [VietNam] => Hanoi
    [Qatar] => Doha
)

6. Hàm krsort() trong PHP

Hàm krsort() có chức năng sắp xếp các phần tử trong mảng kết hợp (associative array) theo thứ tự giảm dần của các key.

<?php
$ages = array("Son"=>30, "John"=>21, "Kane"=>29, "Mary"=>41, "Terry"=>19);
krsort($ages);
print "<pre>";
print_r($ages);
print "</pre>";

$capitals = array("VietNam"=>"Hanoi", "Japan"=>"Tokyo", "Canada"=>"Ottawa", 
                  "Qatar"=>"Doha", "England"=>"London");
krsort($capitals);
print "<pre>";
print_r($capitals);
print "</pre>";
?>
Kết quả
Array
(
    [Terry] => 19
    [Son] => 30
    [Mary] => 41
    [Kane] => 29
    [John] => 21
)
Array
(
    [VietNam] => Hanoi
    [Qatar] => Doha
    [Japan] => Tokyo
    [England] => London
    [Canada] => Ottawa
)
5/5 - (2 bình chọn)
Bài trước và bài sau trong môn học<< Mảng 2 chiều (2 dimensional array) trong PHPCác loại lỗi (error) trong PHP >>
Chia sẻ trên mạng xã hội:

Trả lời

Lưu ý:

1) Vui lòng bình luận bằng tiếng Việt có dấu.

2) Khuyến khích sử dụng tên thật và địa chỉ email chính xác.

3) Mọi bình luận trái quy định sẽ bị xóa bỏ.