PHP usort()

WBOY
Lepaskan: 2024-08-29 13:05:13
asal
1038 orang telah melayarinya

Fungsi ini digunakan untuk mengisih tatasusunan dalam PHP. Kami boleh mengisih tatasusunan kami berdasarkan logik dan keperluan kami, yang bermaksud ia mengisih tatasusunan yang ditentukan dengan fungsi yang ditentukan pengguna. Selain itu, ia mengalih keluar semua kunci lama daripada tatasusunan dan memberikan kunci baharu kepada setiap elemen tatasusunan. Kekunci baharu ini akan menjadi integer yang akan bermula dari 0 hingga bilangan elemen yang terdapat dalam tatasusunan.

IKLAN Kursus Popular dalam kategori ini PEMBANGUN PHP - Pengkhususan | 8 Siri Kursus | 3 Ujian Olok-olok

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

Sintaks:

Fungsi ini mengambil dua parameter sebagai input. Bagaimanapun, PHP mempunyai banyak fungsi terbina dalam yang boleh digunakan untuk mengisih elemen tatasusunan, tetapi di sini, kita boleh lulus fungsi yang ditentukan pengguna untuk mengisih elemen tatasusunan kami. Ini adalah salah satu mata tambah fungsi ini. Mari kita bincangkan sintaks secara terperinci. Lihat di bawah;

cth. :

boolean usort( array, function)
Salin selepas log masuk

Seperti yang kita lihat, fungsi ini mengambil dua parameter sebagai input. Satu ialah tatasusunan yang kita mahu isih dan satu ialah fungsi yang ditentukan pengguna, yang akan menentukan pengisihan elemen tatasusunan; ringkasnya, bagaimana ia akan berkelakuan. Sekarang kita akan melihat satu contoh amalan untuk memahami sintaks dengan cara yang lebih baik.

cth. :

usort( $myArr, "demo_sort_function");
Salin selepas log masuk

Dalam sintaks di atas, kami menghantar tatasusunan dan fungsi yang ditentukan pengguna kepada fungsi usort(). Kami akan membincangkan fungsi secara terperinci dalam bahagian yang akan datang.

Bagaimanakah Fungsi usort() berfungsi dalam PHP?

Setakat ini, kita tahu bahawa fungsi usort() digunakan untuk mengisih tatasusunan mengikut cara yang ditentukan pengguna. Kita boleh menentukan logik kita sendiri untuk menyusun elemen tatasusunan. PHP hadir dengan begitu banyak fungsi terbina dalam yang menyusun tatasusunan, tetapi satu faedah di sini ialah kita boleh menulis algoritma pengisihan kami di sini untuk mengisih. Selain itu, fungsi ini akan mengalih keluar semua kekunci lama elemen tatasusunan dan memberikan setiap satu kunci baharu. Susunan kunci ini akan bermula dari 0 dan seterusnya sehingga panjang fungsi. Sekarang kita akan membincangkan secara terperinci parameter yang digunakan oleh fungsi ini sebagai input dan juga jenis pemulangan fungsi itu juga. lihat di bawah

Fungsi ini mengambil dua parameter iaitu seperti berikut:

1) $array (param pertama): Ini ialah parameter pertama yang digunakan oleh fungsi ini sebagai input. Kita boleh menentukan tatasusunan dan menyampaikannya di sini. Ini akan menjadi tatasusunan yang ingin kita isi dengan cara baharu.

2) fungsi_perbandingan (param kedua): Ini ialah parameter kedua yang fungsi ini ambil sebagai hujah, dan ini akan menjadi fungsi yang ditentukan pengguna yang mengandungi logik pengisihan dengan ia. Kita boleh mentakrifkan satu fungsi dan memanggil fungsi yang ditentukan pengguna daripada fungsi usort() ini. Kita perlu menghantar nama dalam "nama_fungsi" seperti ini. Di bawah ini kami memanggil satu fungsi di mana kami mengisih tatasusunan kami berdasarkan nama.

cth. :

usort($arr, "sortByName")
Salin selepas log masuk

3) Boolean (jenis pengembalian): Jenis pengembalian untuk fungsi ini ialah Boolean dan Boolean mewakili nilai sama ada TRUE atau FALSE bergantung pada hasil fungsi. Fungsi ini akan mengembalikan FALSE dalam kes kegagalan dan TRUE dalam kes kejayaan. Sekarang kita akan melihat satu contoh amalan tentang cara ini berfungsi secara aktual dan di mana kita boleh menggunakan fungsi ini. Berikut ialah contoh amalan untuk pemula memahami aliran dan kerjanya. Lihat di bawah;

cth. :

function my_function_to_sort($a1,$b1)
{
if ($a1==$b1) return 0;
if ($a1 < $b1)
return 1;
else
return -1;
}
$myarr=array(40, 50, 20, 10, 100, 500, 20, 18);
usort($myarr,"my_function_to_sort");
Salin selepas log masuk

Dalam contoh di atas, kami telah mencipta satu tatasusunan yang dipanggil 'myarr', yang akan mengandungi semua elemen yang ingin kami susun. Di sini kami telah menetapkan beberapa nilai kepada tatasusunan ini sebagai 40, 50, 20, 10, 100, 500, 20, 18, dan menggunakan fungsi tatasusunan, yang sudah tersedia dalam PHP. Selain itu, kami telah mencipta satu fungsi di sini dipanggil sebagai 'my_function_to_sort' fungsi ini bertanggungjawab untuk mengisih elemen tatasusunan berdasarkan syarat yang kami telah kembalikan. Di dalam ini, kami telah menulis logik terutamanya jika dua nilai yang diluluskan adalah lebih besar daripada atau lebih kecil daripada, atau sama antara satu sama lain. Atas dasar itu, kecerdasan akan meletakkan elemen ke dalam tatasusunan.

Sekarang kita akan lihat syarat-syaratnya secara terperinci. Apakah kepentingan 1, -1, dan 0 di sini? Mari kita bincangkan secara terperinci. Lihat Di Bawah;

1) 0: Jika kedua-dua elemen adalah sama maka ia akan mengembalikan 0 di sini.

2) 1: Daripada keadaan di atas kita dapat lihat bahawa jika a1 lebih kecil daripada b1 maka ia akan mengembalikan 1.

3) -1: Daripada keadaan di atas, kita dapat melihat bahawa jika a1 lebih besar daripada b1 maka ia akan kembali -1.

Dan seluruh logik akan bertanggungjawab untuk mengisih tatasusunan integer ke dalam tertib menaik atau menurun. Dalam atur cara di atas, ia akan melakukan pengisihan menurun bagi elemen tatasusunan untuk kita.

After this, we are calling usort() function, and here we pass our own parameters here, and that is named ‘$myarr’ ‘my_function_to_sort’. This we can say a custom sorting that we have implemented by using the usort ()
function.

Examples of PHP usort()

Lets us discuss the examples of PHP usort().

Example 1

1) In this example, we are sorting an array of an integer using usort() function available in PHP. This is a custom sort, and we are sorting in descending order.




Demo for usort() funciton in PHP

******************** START ***************

"; echo "

values are ::

"; echo "
"; $lenarr=count($myarr); for($i=0;$i<$lenarr;$i++) { echo "Inside loop printing values :::"; echo $myarr[$i]; echo "
"; } ?>

******************** END ***************

Salin selepas log masuk

Output:

PHP usort()

Example 2

In this example, we are trying to sort an array of the string by using the usort() function available in PHP. Here we are sorting in ascending order or natural order.

<!DOCTYPE html>
<html>
<body>
<p>Demo for usort() funciton in PHP</p>
<p>******************** START ***************</p>
<?php
function my_function_to_sort($a1,$b1)
{
if ($a1==$b1) return 0;
if ($a1 < $b1)
return -1;
else
return 1;
}
$myarr=array("red","yellow", "orange", "black","pink","purple","brown");
usort($myarr,"my_function_to_sort");
echo "<br>";
echo "<p>values are ::</p>";
echo "<br>";
$lenarr=count($myarr);
for($i=0;$i<$lenarr;$i++)
{
echo "Inside loop printing values :::";
echo $myarr[$i];
echo "<br>";
}
?>
<p>******************** END ***************</p>
</body>
</html>
Salin selepas log masuk

Output:

PHP usort()

Conclusion

By using this function, we can sort the array in a custom order, or we can say, in a user-defined manner. This can be called a new manner sorting. By using this, we can sort any number of elements in the array and apply our own logic to sort the data in ascending and descending or natural order.

Atas ialah kandungan terperinci PHP usort(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan