Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menyusun dari kecil ke besar dalam php

Bagaimana untuk menyusun dari kecil ke besar dalam php

PHPz
PHPzasal
2023-04-25 18:26:562455semak imbas

Apabila membangunkan aplikasi web, keperluan untuk mengisih data selalunya terlibat dalam bahasa pengaturcaraan yang memudahkan pengisihan data, dan operasi pengisihan boleh dilakukan melalui fungsi terbina dalam. Artikel ini akan memperkenalkan cara melaksanakan pengisihan daripada kecil kepada besar dalam PHP.

1. Fungsi pengisihan asas

PHP menyediakan dua fungsi pengisihan terbina dalam: sort() dan rsort(), yang digunakan untuk pengisihan ke hadapan dan pengisihan belakang. Kedua-dua fungsi ini akan mengubah suai tatasusunan asal supaya ia diisih mengikut peraturan tertentu Jika anda tidak perlu mengisih mengikut berbilang peraturan pada masa yang sama, anda boleh menggunakan usort() dan uasort().

  1. fungsi sort()

fungsi sort() digunakan untuk pengisihan positif adalah seperti berikut:

sort($array, $sort_flags);

Antaranya. , $array Menunjukkan nama tatasusunan yang akan diisih Parameter pilihan $sort_flags digunakan untuk mengawal kaedah pengisihan Terdapat empat nilai:

  • SORT_REGULAR: Isih mengikut perbandingan konvensional jenis data elemen adalah berbeza, maka penukaran jenis paksa akan dilakukan;
  • SORT_NUMERIC: Isih mengikut perbandingan berangka, elemen akan ditukar kepada jenis berangka sebelum perbandingan; perbandingan rentetan;
  • SORT_LOCALE_STRING: Isih mengikut perbandingan rentetan yang berkaitan dengan budaya semasa.
  • Jika parameter $sort_flags tidak diluluskan, ia akan diisih mengikut SORT_REGULAR secara lalai.

Selepas fungsi sort() dilaksanakan, tatasusunan asal akan disusun dari kecil ke besar mengikut kaedah pengisihan yang ditentukan.

Sebagai contoh, kod berikut menunjukkan penggunaan asas fungsi sort():

Hasilnya ialah:
$array = array(10, 5, 8, 15, 7);
sort($array);
print_r($array);

Array
(
    [0] => 5
    [1] => 7
    [2] => 8
    [3] => 10
    [4] => 15
)
rsort( ) fungsi
  1. rsort() digunakan untuk mengisih dalam susunan terbalik Sintaks asasnya adalah sama dengan fungsi sort(), kecuali ia diisih dari besar ke kecil.
Sebagai contoh, kod berikut menunjukkan penggunaan fungsi rsort():

Hasilnya ialah:

$array = array(10, 5, 8, 15, 7);
rsort($array);
print_r($array);

2 pengisihan

Array
(
    [0] => 15
    [1] => 10
    [2] => 8
    [3] => 7
    [4] => 5
)
Fungsi sort() dan rsort() hanya boleh mengisih tatasusunan satu dimensi Jika anda ingin mengisih tatasusunan berbilang dimensi, anda boleh menggunakan fungsi usort().

Fungsi usort() perlu menyesuaikan fungsi perbandingan Fungsi ini menerima dua parameter, iaitu dua elemen tatasusunan untuk dibandingkan , Mengembalikan nombor negatif semasa mengisih, nombor positif jika elemen pertama lebih besar daripada elemen kedua dan 0 jika dua elemen adalah sama.

Sebagai contoh, kod berikut menunjukkan cara menggunakan fungsi usort() untuk mengisih tatasusunan berbilang dimensi:

Hasilnya ialah:

$data = array(
    array('name' => 'Tom', 'age' => 25),
    array('name' => 'Tim', 'age' => 30),
    array('name' => 'Carl', 'age' => 20),
    array('name' => 'Bob', 'age' => 35),
);

// 自定义比较函数
function cmp($a, $b)
{
    if ($a['age'] > $b['age']) {
        return 1;
    } elseif ($a['age'] < $b[&#39;age&#39;]) {
        return -1;
    } else {
        return 0;
    }
}

usort($data, &#39;cmp&#39;);

print_r($data);

3 . Dari pangkalan data Membaca data

Array
(
    [0] => Array
        (
            [name] => Carl
            [age] => 20
        )

    [1] => Array
        (
            [name] => Tom
            [age] => 25
        )

    [2] => Array
        (
            [name] => Tim
            [age] => 30
        )

    [3] => Array
        (
            [name] => Bob
            [age] => 35
        )

)
Dalam aplikasi praktikal, kebanyakan data yang perlu diisih dibaca daripada pangkalan data, dan klausa ORDER BY pernyataan SQL boleh digunakan untuk mengisih hasil pertanyaan.

Sebagai contoh, berikut ialah penyata SQL yang menyusun daripada jadual

dalam pangkalan data MySQL mengikut umur dari kecil ke besar:

usersLaksanakan pernyataan SQL di atas melalui PHP ke dapatkan pesanan mengikut umur Senarai pengguna yang diisih dari kecil ke besar.

SELECT * FROM `users` ORDER BY `age` ASC;
4 Ringkasan

Artikel ini memperkenalkan beberapa kaedah pengisihan daripada kecil ke besar dalam PHP, termasuk fungsi terbina dalam seperti sort(), rsort(), usort(), dan through. SQL Penyataan cara diisih. Pembangun boleh memilih kaedah yang sesuai berdasarkan keperluan dan sumber data yang berbeza untuk melaksanakan pengisihan data dengan mudah.

Atas ialah kandungan terperinci Bagaimana untuk menyusun dari kecil ke besar dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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