Hàm sort() trong PHP

Hàm sort() trong PHP
Hàm sort() trong PHP

Chức năng của Hàm sort() trong PHP

Hàm sort() trong PHP dùng để sắp xếp các phần tử trong một mảng theo giá trị tăng dần và xóa bỏ khóa (key) đặt lại khóa (key) mới cho các phần tử trong mảng, hàm này sắp xếp tất cả các phần tử có giá trị là số tăng dần hoặc sắp xếp tất cả phần tử có giá trị chuỗi tăng dần, nếu trong tất cả phần tử có cả giá trị số và chữ thì nó lấy các ký tự đầu tiên trong chuỗi là số để sắp xếp với các giá trị số.

Cú pháp của Hàm sort() trong PHP

sort($biến_mảng);

$biến_mảng: Biến của mảng.

Ví dụ Hàm sort() trong PHP

<h2>Hàm sort() sắp xếp giá trị chuỗi tăng dần</h2>
<?php
$manggiatrichu = array("Vân","Lực","Quỳnh");
sort($manggiatrichu);
foreach($manggiatrichu as $key => $value){
echo $key." - ".$value."<br>";
}?>

<h2>Hàm sort() sắp xếp giá trị số tăng dần</h2>
<?php 
$manggiatriso = array(29,35,1);
sort($manggiatriso);
foreach($manggiatriso as $key => $value){
echo $key." - ".$value."<br>";
}
?>

Kết quả:

/////Hàm sort() sắp xếp giá trị chuỗi tăng dần
0 - Lực
1 - Quỳnh
2 - Vân
/////Hàm sort() sắp xếp giá trị số tăng dần
0 - 1
1 - 29
2 - 35

Chạy Thử

Những lưu ý khi sử dụng Hàm sort() trong PHP

sort() là lựa chọn đơn giản khi cần sắp xếp các phần tử của mảng theo thứ tự tăng dần. Tuy nhiên, hàm này có một đặc điểm quan trọng: sau khi sắp xếp, các key của mảng sẽ được đánh lại từ 0. Vì vậy, cần xác định rõ dữ liệu có phụ thuộc vào key ban đầu hay không trước khi sử dụng.

Hàm sort() làm thay đổi key của mảng như thế nào?

Khi gọi sort(), PHP không chỉ sắp xếp lại giá trị mà còn tạo lại key theo thứ tự từ 0, 1, 2.... Các key cũ sẽ không được giữ lại. Điều này đặc biệt đáng chú ý với mảng có key tự đặt.

<?php
$data = [
    "sp03" => "Laptop",
    "sp01" => "Điện thoại",
    "sp02" => "Máy tính bảng"
];

sort($data);

print_r($data);
?>

Sau khi sắp xếp, mảng sẽ có các key mới là 0, 1, 2 thay vì sp03, sp01, sp02. Vì vậy, không nên dùng sort() nếu key ban đầu có ý nghĩa đối với dữ liệu.

Khi nào nên dùng sort() thay vì các hàm sắp xếp khác?

Nên sử dụng sort() khi mục tiêu chính là sắp xếp giá trị của một mảng theo thứ tự tăng dần và không cần giữ lại key ban đầu. Đây là trường hợp phù hợp với các danh sách đơn giản như tên, số lượng, điểm số hoặc các giá trị cần hiển thị theo thứ tự.

Nếu cần giữ nguyên key, nên cân nhắc các hàm sắp xếp khác như asort(). Khi muốn sắp xếp dựa trên key thay vì giá trị, ksort() sẽ phù hợp hơn. Việc chọn đúng hàm giúp tránh tình trạng dữ liệu bị thay đổi cấu trúc ngoài mong muốn.

Những lỗi thường gặp khi sử dụng hàm sort() trong PHP

  • Quên rằng key sẽ bị đánh lại: đây là lỗi dễ gặp nhất khi xử lý mảng có key tùy chỉnh.
  • Dùng sai hàm sắp xếp: nếu cần giữ quan hệ giữa key và value, không nên tùy tiện dùng sort().
  • Không kiểm tra dữ liệu sau khi sắp xếp: với mảng chứa nhiều loại giá trị, nên xác định cách PHP so sánh dữ liệu trước khi đưa vào xử lý thực tế.

Trước khi sử dụng sort(), hãy xác định mảng chỉ cần thứ tự của giá trị hay còn cần giữ nguyên key. Chỉ một lựa chọn sai hàm cũng có thể làm mất thông tin định danh của các phần tử trong quá trình xử lý.

Lời kết

Cảm ơn các bạn đã tham khảo bài viết Hàm sort() trong PHP.

  • 0 Bình luận
Trần Thị Vân | Content Creator Web Mới
Trần Thị Vân
Trần Thị Vân là Content Creator tại Web Mới, phụ trách nghiên cứu, biên soạn nội dung và chia sẻ kiến thức về website, SEO, lập trình cùng các xu hướng công nghệ
Đánh giá
Chia sẻ nội dung đánh giá của bạn về Hàm sort() trong PHP
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *
Đánh giá của bạn
Tên *
Email
Số điện thoại *
Bình luận, Hỏi đáp
Yêu Cầu Báo Giá
Gửi trang web mẫu cần làm theo, chúng tôi sẽ báo giá đến bạn từ Email (tanlucit09@gmail.com - Bùi Tấn Lực) hoặc Zalo (Lực IT - 0398259259) !