PHP : Sorting Array

Fungsi PHP Untuk Sorting Array

Pada bab sebelumnya kalian telah mempelajari esensi dari array PHP, yaitu array seperti apa, bagaimana membuatnya, bagaimana melihat strukturnya, cara mengakses elemen-elemennya, dll. Kalian bahkan dapat melakukan lebih banyak hal dengan array seperti menyortir elemen dalam urutan apa pun yang kalian suka.

PHP hadir dengan sejumlah fungsi built-in yang dirancang khusus untuk mengurutkan elemen array dengan cara yang berbeda seperti abjad atau numerik dalam urutan naik (ascending) atau turun (descending). Di sini kita akan mengeksplore beberapa fungsi yang paling umum digunakan untuk menyortir array.

  • sort() dan rsort() – Untuk mengurutkan indexed array.
  • asort() dan arsort() – Untuk mengurutkan associative array berdasarkan nilai.
  • ksort() dan krsort() – Untuk mengurutkan associative array berdasarkan kunci (key).
Sorting Indexed Array dalam Ascending Order

Fungsi sort() digunakan untuk menyortir elemen-elemen dari array yang diindeks dalam ascending order (abjad untuk huruf dan angka untuk angka).

<?php
// Define array
$colors = array("Red", "Green", "Blue", "Yellow");
 
// Sorting and printing array
sort($colors);
print_r($colors);
?>

Pernyataan print_r() ini memberikan output sebagai berikut:

Demikian pula kalian dapat mengurutkan elemen numerik array dalam ascending order.

<?php
// Define array
$numbers = array(1, 2, 2.5, 4, 7, 10);
 
// Sorting and printing array
sort($numbers);
print_r($numbers);
?>

Demikian pula Pernyataan print_r() ini memberikan output sebagai berikut:

Sorting Indexed Array dalam Descending Order

Fungsi rsort() digunakan untuk menyortir elemen-elemen dari array yang diindeks dalam descending order (abjad untuk huruf dan numeric untuk angka).

<?php
// Define array
$colors = array("Red", "Green", "Blue", "Yellow");
 
// Sorting and printing array
rsort($colors);
print_r($colors);
?>

Pernyataan print_r() ini memberikan output sebagai berikut:

Demikian pula kalian dapat mengurutkan elemen numerik array dalam descending order.

<?php
// Define array
$numbers = array(1, 2, 2.5, 4, 7, 10);
 
// Sorting and printing array
rsort($numbers);
print_r($numbers);
?>

Pernyataan print_r() ini memberikan output sebagai berikut:

Sorting Associative Array dalam Ascending Order Berdasarkan Nilainya

Fungsi asort() mengurutkan elemen array associative dalam urutan naik sesuai dengan nilainya. Ini berfungsi seperti rsort(), tetapi mempertahankan hubungan antara kunci dan nilainya saat menyortir.

<?php
// Define array
$age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35);
 
// Sorting array by value and print
asort($age);
print_r($age);
?>

Pernyataan print_r() ini memberikan output sebagai berikut:

Sorting Associative Array dalam Ascending Order Berdasarkan Key

Fungsi ksort() mengurutkan elemen array asosiatif dalam ascending order berdasarkan kunci (key) mereka. Ini menjaga hubungan antara kunci dan nilainya saat menyortir, sama seperti fungsi asort().

<?php
// Define array
$age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35);
 
// Sorting array by key and print
ksort($age);
print_r($age);
?>

Pernyataan print_r() ini memberikan output sebagai berikut:

Sorting Associative Array dalam Descending Order Berdasarkan Key

Fungsi krsort() mengurutkan elemen array asosiatif dalam descending order dengan kunci (key) mereka. Ini menjaga hubungan antara kunci dan nilainya saat menyortir, sama seperti fungsi arsort().

<?php
// Define array
$age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35);
 
// Sorting array by key and print
krsort($age);
print_r($age);
?>

Pernyataan print_r() ini memberikan output sebagai berikut: