Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengisih tatasusunan dalam php

Bagaimana untuk mengisih tatasusunan dalam php

PHPz
PHPzasal
2023-04-17 16:37:16464semak imbas

PHP ialah bahasa skrip sumber terbuka yang digunakan secara meluas terutamanya digunakan untuk pembangunan web. Apabila membangunkan aplikasi web menggunakan PHP, anda selalunya perlu mengisih data. Dalam PHP, anda boleh menggunakan fungsi seperti sort(), rsort(), asort(), arsort(), ksort(), krsort(), usort(), uasort(), uksort() dan fungsi lain untuk mengisih tatasusunan . Penggunaan fungsi ini diperkenalkan di bawah.

  1. fungsi sort()

fungsi sort() ialah fungsi dalam PHP yang digunakan untuk mengisih tatasusunan dalam tertib menaik. Fungsi ini boleh mengisih tatasusunan angka dan tatasusunan rentetan, tetapi ia hanya boleh mengisih tatasusunan satu dimensi. Kodnya adalah seperti berikut:

$numbers = array(4, 2, 8, 6);
sort($numbers);
print_r($numbers); // 输出:Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 8 )

Dalam contoh di atas, fungsi sort() mengisih tatasusunan berangka $nombor dalam tertib menaik dan mengeluarkan hasilnya.

  1. fungsi rsort()

fungsi rsort() ialah fungsi dalam PHP yang digunakan untuk mengisih tatasusunan dalam tertib menurun. Fungsi ini serupa dengan fungsi sort(), kecuali susunan sort ditukar kepada tertib menurun. Kodnya adalah seperti berikut:

$numbers = array(4, 2, 8, 6);
rsort($numbers);
print_r($numbers); // 输出:Array ( [0] => 8 [1] => 6 [2] => 4 [3] => 2 )

Dalam contoh di atas, fungsi rsort() mengisih tatasusunan berangka $nombor dalam tertib menurun dan mengeluarkan hasilnya.

  1. fungsi asort()

fungsi asort() ialah fungsi dalam PHP yang digunakan untuk mengisih tatasusunan dalam tertib menaik Ia berbeza daripada fungsi sort(), asort(. ) fungsi Nilai kunci dalam tatasusunan asal akan dikekalkan. Kodnya adalah seperti berikut:

$numbers = array("d"=>4, "b"=>2, "c"=>8, "a"=>6);
asort($numbers);
print_r($numbers); // 输出:Array ( [b] => 2 [d] => 4 [a] => 6 [c] => 8 )

Dalam contoh di atas, fungsi asort() mengisih tatasusunan rentetan $nombor dalam tertib menaik dan mengekalkan nilai kunci dalam tatasusunan asal.

  1. fungsi arsort()

fungsi arsort() ialah fungsi dalam PHP yang digunakan untuk mengisih tatasusunan dalam tertib menurun, sama seperti fungsi asort() juga mengekalkan nilai kunci asal dalam tatasusunan. Kodnya adalah seperti berikut:

$numbers = array("d"=>4, "b"=>2, "c"=>8, "a"=>6);
arsort($numbers);
print_r($numbers); // 输出:Array ( [c] => 8 [a] => 6 [d] => 4 [b] => 2 )

Dalam contoh di atas, fungsi arsort() mengisih tatasusunan rentetan $nombor dalam tertib menurun dan mengekalkan nilai kunci dalam tatasusunan asal.

  1. fungsi ksort()

fungsi ksort() ialah fungsi dalam PHP yang digunakan untuk mengisih tatasusunan dalam tertib menaik mengikut nama kunci. Fungsi ini hanya boleh mengisih tatasusunan bagi satu dimensi. Kodnya adalah seperti berikut:

$numbers = array("d"=>4, "b"=>2, "c"=>8, "a"=>6);
ksort($numbers);
print_r($numbers); // 输出:Array ( [a] => 6 [b] => 2 [c] => 8 [d] => 4 )

Dalam contoh di atas, fungsi ksort() mengisih tatasusunan rentetan $nombor dalam tertib menaik mengikut nama kunci.

  1. fungsi krsort()

fungsi krsort() ialah fungsi dalam PHP yang digunakan untuk mengisih tatasusunan dalam susunan menurun mengikut nama kunci. Fungsi ini serupa dengan fungsi ksort(), kecuali susunan isihan ditukar kepada tertib menurun. Kodnya adalah seperti berikut:

$numbers = array("d"=>4, "b"=>2, "c"=>8, "a"=>6);
krsort($numbers);
print_r($numbers); // 输出:Array ( [d] => 4 [c] => 8 [b] => 2 [a] => 6 )

Dalam contoh di atas, fungsi krsort() mengisih tatasusunan rentetan $nombor dalam susunan menurun mengikut nama kunci.

  1. fungsi usort()

fungsi usort() ialah fungsi dalam PHP untuk pengisihan tersuai tatasusunan. Fungsi ini perlu menyesuaikan fungsi perbandingan untuk pengisihan Fungsi perbandingan mengembalikan nilai integer yang mewakili hasil perbandingan. Jika argumen pertama kurang daripada argumen kedua, nombor negatif dikembalikan jika argumen pertama sama dengan argumen kedua, sifar dikembalikan jika argumen pertama lebih besar daripada argumen kedua, nombor positif dikembalikan. Kodnya adalah seperti berikut:

function compare($a, $b) {
    if($a<$b)
        return -1;
    elseif($a==$b)
        return 0;
    else
        return 1;
}
$numbers = array(4, 2, 8, 6);
usort($numbers, "compare");
print_r($numbers); // 输出:Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 8 )

Dalam contoh di atas, fungsi usort() melakukan isihan menaik tersuai pada tatasusunan angka $numbers, dan fungsi perbandingan ialah fungsi compare().

  1. fungsi uasort()

fungsi uasort() ialah fungsi dalam PHP untuk pengisihan tersuai tatasusunan Tidak seperti fungsi usort(), fungsi uasort () akan dikekalkan nilai utama dalam tatasusunan asal. Kodnya adalah seperti berikut:

function compare($a, $b) {
    if($a<$b)
        return -1;
    elseif($a==$b)
        return 0;
    else
        return 1;
}
$numbers = array("d"=>4, "b"=>2, "c"=>8, "a"=>6);
uasort($numbers, "compare");
print_r($numbers); // 输出:Array ( [b] => 2 [d] => 4 [a] => 6 [c] => 8 )

Dalam contoh di atas, fungsi uasort() melaksanakan isihan menaik tersuai pada tatasusunan rentetan $numbers dan mengekalkan nilai kunci dalam tatasusunan asal.

  1. fungsi uksort()

fungsi uksort() ialah fungsi dalam PHP yang digunakan untuk menyesuaikan nama kunci tatasusunan. Fungsi ini perlu menyesuaikan fungsi perbandingan untuk pengisihan Fungsi perbandingan mengembalikan nilai integer yang mewakili hasil perbandingan. Kodnya adalah seperti berikut:

function compare($a, $b) {
    if($a<$b)
        return -1;
    elseif($a==$b)
        return 0;
    else
        return 1;
}
$numbers = array("d"=>4, "b"=>2, "c"=>8, "a"=>6);
uksort($numbers, "compare");
print_r($numbers); // 输出:Array ( [a] => 6 [b] => 2 [c] => 8 [d] => 4 )

Dalam contoh di atas, fungsi uksort() melaksanakan isihan menaik tersuai pada tatasusunan rentetan $nombor mengikut nama kunci.

Ringkasan

Dalam PHP, terdapat banyak fungsi untuk mengisih tatasusunan dan pembangun boleh memilih fungsi yang sesuai untuk diisih mengikut keperluan mereka. Jika anda perlu menyesuaikan pengisihan tatasusunan, anda boleh menggunakan fungsi usort(), uasort(), uksort() dan menyesuaikan fungsi perbandingan untuk mengisih. Jika anda perlu mengisih tatasusunan mengikut nama kunci, anda boleh menggunakan fungsi ksort(), krsort(), dan uksort() Jika anda ingin mengekalkan nilai kunci dalam tatasusunan asal, anda boleh menggunakan asort(. ), fungsi arsort(), dan uasort().

Atas ialah kandungan terperinci Bagaimana untuk mengisih tatasusunan 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