Pengisihan tatasusunan PHP: penerokaan mendalam daripada satu dimensi kepada berbilang dimensi

WBOY
Lepaskan: 2024-04-29 16:00:02
asal
298 orang telah melayarinya

PHP menyediakan pelbagai fungsi pengisihan tatasusunan, termasuk sort(), rsort(), assort(), arsort() untuk pengisihan tatasusunan berbilang dimensi, anda boleh menggunakan fungsi tersuai array_multisort(), dengan menentukan Berbilang lajur untuk diisih dalam tertib menaik atau menurun.

Pengisihan tatasusunan PHP: penerokaan mendalam daripada satu dimensi kepada berbilang dimensi

Pengisihan Tatasusunan PHP: Penerokaan yang mendalam daripada satu dimensi kepada berbilang dimensi

Pengenalan

Pengisihan tatasusunan adalah penting dalam pengaturcaraan dan boleh digunakan untuk mengatur data. PHP menyediakan beberapa fungsi untuk mengisih tatasusunan, termasuk sort(), rsort(), asort(), arsort () code>, <code>natsort(), natcasesort() dsb. sort(), rsort(), asort(), arsort(), natsort(), natcasesort() 等。

单维数组排序

对单维数组进行排序很简单,可以通过以下函数:

  • sort():按升序对数组元素进行排序。
  • rsort():按降序对数组元素进行排序。
  • asort():按键进行升序排序。
  • arsort()
Isih tatasusunan satu dimensi

Isih tatasusunan satu dimensi adalah sangat mudah, anda boleh menggunakan fungsi berikut:

  • sort(): Isih elemen tatasusunan dalam susunan menaik.

  • rsort(): Isih elemen tatasusunan dalam tertib menurun.
  • asort(): Isih dalam tertib menaik mengikut kekunci.

  • arsort(): Isih dalam susunan menurun mengikut kekunci.

    Kes praktikal: Isih tatasusunan satu dimensi produk dalam tertib menaik mengikut nama

    <?php
    $products = array(
        "Apple" => "iPhone",
        "Samsung" => "Galaxy",
        "Google" => "Pixel",
    );
    
    asort($products);
    
    print_r($products);
    Salin selepas log masuk
    Output:
    Array
    (
        [Apple] => iPhone
        [Google] => Pixel
        [Samsung] => Galaxy
    )
    Salin selepas log masuk

    Isih tatasusunan pelbagai dimensi

    🎜🎜Sesetengah masa. Tiada fungsi luar biasa dalam PHP untuk melakukan ini, tetapi kita boleh mengatasinya dengan fungsi tersuai: 🎜
    function array_multisort($array, $columns) {
        $temp = [];
        foreach($array as $k => $v) {
            $temp[$k] = [];
            foreach($columns as $key) {
                $temp[$k][$key] = $v[$key];
            }
        }
        array_multisort($temp, SORT_ASC);
        foreach($temp as $k => $v) {
            foreach($columns as $key) {
                $array[$k][$key] = $v[$key];
            }
        }
        return $array;
    }
    Salin selepas log masuk
    🎜🎜Contoh praktikal: Mengisih tatasusunan berbilang dimensi mengikut nama produk dan harga 🎜🎜
    <?php
    $products = array(
        array(
            "name" => "iPhone",
            "price" => 1000,
        ),
        array(
            "name" => "Galaxy",
            "price" => 800,
        ),
        array(
            "name" => "Pixel",
            "price" => 900,
        ),
    );
    
    array_multisort($products, ['name', 'price']);
    
    print_r($products);
    Salin selepas log masuk
    🎜Output : 🎜rreeee

Atas ialah kandungan terperinci Pengisihan tatasusunan PHP: penerokaan mendalam daripada satu dimensi kepada berbilang dimensi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!