Bagaimana untuk mengatur tatasusunan dua dimensi dalam php

PHPz
Lepaskan: 2023-04-26 09:37:32
asal
499 orang telah melayarinya

PHP ialah bahasa pengaturcaraan yang sangat baik yang menyokong mengakses dan mengendalikan pelbagai jenis tatasusunan. Sama ada tatasusunan satu dimensi atau tatasusunan berbilang dimensi, ia boleh diisih dan diproses menggunakan pelbagai fungsi yang disediakan dalam PHP. Artikel ini akan membincangkan secara terperinci cara mengisih tatasusunan dua dimensi dalam PHP.

Apakah tatasusunan dua dimensi?

Pertama, kita perlu tahu apa itu tatasusunan dua dimensi. Tatasusunan dua dimensi merujuk kepada struktur tatasusunan yang terdiri daripada tatasusunan satu dimensi berbilang, yang boleh difahami sebagai jadual atau matriks. Sebagai contoh, dalam sistem pengurusan maklumat pelajar, setiap maklumat pelajar membentuk tatasusunan satu dimensi, dan semua maklumat pelajar membentuk tatasusunan dua dimensi.

Bagaimana untuk mencipta tatasusunan dua dimensi?

Dalam PHP, kita boleh mencipta tatasusunan dua dimensi dalam pelbagai cara, seperti:

  1. Pengamatan langsung

boleh ditetapkan dalam pembolehubah tatasusunan Mulakan secara langsung tatasusunan dua dimensi menggunakan pasangan nilai kunci:

$students = array(
    array('name' => '张三', 'age' => 18, 'score' => 80),
    array('name' => '李四', 'age' => 20, 'score' => 90),
    array('name' => '王五', 'age' => 19, 'score' => 85)
);
Salin selepas log masuk
  1. Tetapkan nilai satu demi satu

Anda juga boleh menambah elemen pada tatasusunan satu oleh satu untuk mencipta tatasusunan dua dimensi:

$students = array();
$students[] = array('name' => '张三', 'age' => 18, 'score' => 80);
$students[] = array('name' => '李四', 'age' => 20, 'score' => 90);
$students[] = array('name' => '王五', 'age' => 19, 'score' => 85);
Salin selepas log masuk

Bagaimana untuk mengisih tatasusunan dua dimensi?

Selepas mempunyai tatasusunan dua dimensi, kita selalunya perlu mengisihnya untuk mempersembahkan data dan memaparkan hasil dengan lebih baik. Dalam PHP, pengisihan tatasusunan dua dimensi boleh dilakukan menggunakan fungsi terbina dalam.

  1. Isih mengikut nilai kunci yang ditentukan

Anda boleh menggunakan fungsi isihan terbina dalam dalam PHP untuk mengisih keseluruhan tatasusunan dua dimensi dengan menyatakan nama kunci. Contohnya, contoh berikut boleh mengisih keseluruhan tatasusunan mengikut nama kunci "skor":

function sortByScore($a, $b) {
    return $a['score'] < $b[&#39;score&#39;];
}

usort($students, &#39;sortByScore&#39;);
Salin selepas log masuk

SkorByskor di sini ialah fungsi panggil balik yang digunakan untuk menentukan kaedah perbandingan. Fungsi usort digunakan untuk mengisih tatasusunan Parameter kedua menentukan nama fungsi perbandingan.

  1. Isih mengikut berbilang nilai kekunci

Jika anda perlu mengisih mengikut berbilang nilai kunci, anda boleh mengisih berbilang nilai kunci dengan membandingkannya dalam fungsi panggil balik . Sebagai contoh, contoh berikut boleh mengisih mengikut nama kunci "skor" dahulu, dan kemudian mengisih mengikut nama kunci "umur" jika setiap skor adalah sama:

function sortByScoreAndAge($a, $b) {
    if ($a[&#39;score&#39;] == $b[&#39;score&#39;]) {
        return ($a[&#39;age&#39;] < $b[&#39;age&#39;]) ? -1 : 1;
    } else {
        return ($a[&#39;score&#39;] > $b['score']) ? -1 : 1;
    }
}

usort($students, 'sortByScoreAndAge');
Salin selepas log masuk

Kaedah di sini ialah mengisih dahulu mengikut nama kunci "umur": Isih mengikut "skor". Jika dua pelajar mempunyai skor yang sama, mereka diisih mengikut "umur".

  1. Isih mengikut jenis nilai kunci

Kadangkala, kita perlu mengisih tatasusunan dua dimensi mengikut jenis nilai kunci untuk pemprosesan seterusnya yang lebih baik. Tatasusunan boleh diisih menggunakan fungsi array_multisort terbina dalam dalam PHP. Sebagai contoh, contoh berikut boleh mengisih keseluruhan tatasusunan mengikut jenis nilai kunci "skor":

$score = array_column($students, 'score');  // 获取所有学生的分数
array_multisort($score, SORT_ASC, $students);
Salin selepas log masuk

Fungsi array_column di sini digunakan untuk mendapatkan markah semua pelajar dan menyimpannya dalam $ tengah tatasusunan skor. Fungsi array_multisort digunakan untuk mengisih keseluruhan tatasusunan, dan hasil yang diisih akan disimpan dalam pembolehubah $students.

Kesimpulan

Di atas ialah perbincangan tentang menyusun tatasusunan dua dimensi dalam PHP. Apabila kita perlu memproses sejumlah besar data, pengisihan tatasusunan selalunya merupakan bahagian yang sangat diperlukan. Sama ada mengisih mengikut nilai kunci tunggal atau berbilang nilai kunci, PHP menyediakan fungsi terbina dalam yang sesuai untuk membantu kami mengisih dengan mudah. Kami berharap artikel ini dapat membantu anda.

Atas ialah kandungan terperinci Bagaimana untuk mengatur tatasusunan dua dimensi dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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