Hướng dẫn dùng php asort trong PHP

Định nghĩa hàm asort() trong PHP

Hàm asort() trong PHP sắp xếp một mảng theo cách mà các chỉ mục mảng duy trì mối liên kết với các phần tử mảng mà chúng đã liên kết với. Hàm này được sử dụng chủ yếu khi sắp xếp các mảng liên hợp khi mà thứ tự phần tử thực sự của nó là đặc biệt quan trọng.

Cú pháp Hàm asort() trong PHP

Hàm asort() trong PHP có cú pháp như sau:

asort( $array [, $sort_flags] );

Tham số

Tham sốMiêu tả
array Bắt buộc. Xác định một mảng
sort_flags

Tùy ý. Xác định cách sắp xếp các value của mảng. Các giá trị có thể có là:

  • SORT_REGULAR − Mặc định. Xem xét value ở dạng ban đầu của nó (không thay đổi kiểu)

  • SORT_NUMERIC − Xem xét các value ở dưới dạng số

  • SORT_STRING − Xem xét các value như là các chuỗi

  • SORT_LOCALE_STRING − Xem xét các value như là các chuỗi, dựa trên các cài đặt nội bộ

Trả về giá trị

Trả về TRUE nếu thành công hoặc FALSE nếu thất bại.

Ví dụ minh họa cách sử dụng hàm asort() trong PHP:

"lemon", "a"=>"orange", "b"=>"banana" );
   asort($fruits);

   print_r($fruits);
?> 

Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả:

Hướng dẫn dùng php asort trong PHP

Xem thêm Hàm trong php

Hàm asort() trong PHP

Nội Dung

  • 1. Hàm asort() trong PHP
  • 2. Cú pháp của hàm asort() trong PHP
  • 3. Ví dụ về hàm asort() trong PHP

Hàm asort() trong PHP được sử dụng để sắp xếp mảng trong PHP. Cụ thể hàm asort() sẽ sắp xếp mảng theo thứ tự tăng dần theo các giá trị của mảng và duy trì liên kết chỉ mục. Hàm asort() sẽ sắp xếp theo cách mà mối quan hệ giữa các chỉ số và giá trị được duy trì. Có nghĩa là sắp xếp mảng theo thứ tự tăng dần, sao cho các key của nó duy trì mối tương quan của chúng với các giá trị mà chúng được liên kết. Ta chủ yếu sử dụng hàm này khi sắp xếp các mảng liên hợp khi mà thứ tự phần tử thực sự của nó là đặc biệt quan trọng. Hàm asort() được giới thiệu và sử dụng từ phiên bản PHP 4.0

2. Cú pháp của hàm asort() trong PHP

Ta có cú pháp của hàm asort() trong PHP là :

asort( $array , $type )

Trong đó :

  • $array : mảng đầu vào mà ta cần xử lý. Tham số này là bắt buộc trong hàm
  • $type : Tham số này chỉ định tên của một hàm do người dùng định nghĩa sẽ được sử dụng để sắp xếp các key của mảng $array . Hàm so sánh này được gán là một số nguyên. Tham số này là không bắt buộc trong hàm

Ta có những giá trị của $type là :

  • 0 = SORT_REGULAR : giá trị mặc định của $type . Nó sẽ so sánh các value một cách bình thường mà không thay đổi loại
  • 1 = SORT_NUMERIC : so sánh các value dưới dạng số
  • 2 = SORT_STRING : so sánh các value dưới dạng chuỗi
  • 3 = SORT_LOCALE_STRING : so sánh các value dưới dạng chuỗi và dựa trên ngôn ngữ hiện tại
  • 4 = SORT_NATURAL : So sánh các value dưới dạng chuỗi bằng cách sử dụng thứ tự tự nhiên
  • 5 = SORT_FLAG_CASE : sử dụng kết hợp với SORT_STRING hoặc SORT_NATURAL để sắp xếp chuỗi mà không phân biệt chữ hoa chữ thường.

Hàm asort() sẽ trả về True khi đã sắp xếp thành công. Ngược lại giá trị False sẽ được trả về nếu như thất bại. Nếu trong quá trình so sánh mà mảng có những giá trị bằng nhau thì chúng sẽ vẫn giữ nguyên thứ tự ban đầu.

Ví dụ : Sắp xếp một mảng kết hợp theo thứ tự tăng dần (theo value)

"35","Java"=>"37","Python"=>"43"); 
asort($a1); 

echo '
'; 
print_r($a1); 
?>

Kết quả

Array
(
    [PHP] => 35
    [Java] => 37
    [Python] => 43
)

Sau khi truyền mảng $a1 vào hàm asort() thì mảng này đã được xắp xếp luôn theo thứ tự tăng dần. Ta có thể dễ dàng nhận thấy rằng hàm này ngược lại với hàm arsort() mà ta đã tìm hiểu ở bài trước.

3. Ví dụ về hàm asort() trong PHP

Ví dụ 1:

 "PHP",
            "1" => "Java",
            "2" => "Python",
            "3" => "JavaScript",
            "4" => "SQL",
            "5" => "CSS",
            "6" => "HTML",
            "7" => "C"
        );
arsort($arr);
foreach ($arr as $key => $val) {
    echo "[$key] = $val";
    echo"
"; } ?>

Kết quả

[7] = C
[5] = CSS
[6] = HTML
[1] = Java
[3] = Javascript
[0] = PHP
[2] = Python
[4] = SQL

Ví dụ 2:

 11,
            "b" => 22,
            "d" => 33,
            "n" => 44,
            "o" => 55,
            "p" => 66,
            "p" => 77,
            "q" => 88,
        );
asort($arr);
    
foreach ($arr as $key => $val) {
    echo "[$key] = $val";
    echo"
"; } ?>

Kết quả

[a] = 11
[b] = 22
[d] = 33
[n] = 44
[o] = 55
[p] = 77
[q] = 88

Ví dụ 3:

 "PHP",
            "1" => "Java",
            "2" => "Python",
            "3" => "JavaScript",
            "4" => "SQL",
            "5" => "CSS",
            "6" => "HTML",
            "7" => "C"
        );
asort($arr,2);
foreach ($arr as $key => $val) {
    echo "[$key] = $val";
    echo"
"; } ?>

Kết quả

[7] = C
[5] = CSS
[6] = HTML
[1] = Java
[3] = Javascript
[0] = PHP
[2] = Python
[4] = SQL