Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php flip tatasusunan dua dimensi

php flip tatasusunan dua dimensi

WBOY
WBOYasal
2023-05-06 09:56:07526semak imbas
  1. Prakata

Dalam PHP, tatasusunan (Array) ialah salah satu daripada struktur data biasa. Tatasusunan terdiri daripada beberapa elemen (Elemen), dan setiap elemen mempunyai indeks unik (Indeks). Tatasusunan dalam PHP boleh menjadi satu dimensi, dua dimensi, atau bahkan berbilang dimensi. Dalam pembangunan, kita selalunya perlu beroperasi pada tatasusunan, dan salah satu operasi biasa ialah membalik tatasusunan. Di bawah ini kami akan memperkenalkan secara terperinci cara membalikkan tatasusunan dua dimensi dalam PHP.

  1. Apakah susunan terbalik?

Dalam tatasusunan dua dimensi, kami biasanya melakukan operasi seperti menyusun dan menapis mengikut dimensi tertentu. Walau bagaimanapun, jika kita perlu melakukan operasi terbalik pada tatasusunan, iaitu, flip tatasusunan dua dimensi di sepanjang dimensi tertentu untuk mencapai tujuan mengubah struktur tatasusunan, operasi ini dipanggil membalik tatasusunan.

Sebagai contoh, katakan kita mempunyai tatasusunan dua dimensi $originalArr, yang menyimpan satu siri maklumat tentang rangka kerja PHP:

$originalArr = array(
    array("name" => "Laravel", "year" => "2011", "author" => "Taylor Otwell"),
    array("name" => "Symfony", "year" => "2005", "author" => "Fabien Potencier"),
    array("name" => "CodeIgniter", "year" => "2006", "author" => "EllisLab"),
    array("name" => "CakePHP", "year" => "2005", "author" => "Cake Software Foundation")
);

Jika kita ingin menggunakan tahun sebagai dimensi pertama bagi tatasusunan Dengan membalikkan, anda boleh mendapatkan tatasusunan baharu berikut $flippedArr:

$flippedArr = array(
    "2011" => array("name" => "Laravel", "year" => "2011", "author" => "Taylor Otwell"),
    "2005" => array("name" => "Symfony", "year" => "2005", "author" => "Fabien Potencier"),
    "2006" => array("name" => "CodeIgniter", "year" => "2006", "author" => "EllisLab"),
    "2005" => array("name" => "CakePHP", "year" => "2005", "author" => "Cake Software Foundation")
);

Anda boleh melihat tatasusunan satu dimensi yang diindeks mengikut tahun dalam tatasusunan baharu menggantikan dimensi pertama dalam tatasusunan asal, sekali gus mencapai terbalik Tujuan.

  1. Cara melaksanakan flipping tatasusunan dua dimensi

Dalam PHP, flipping tatasusunan dua dimensi boleh dicapai melalui dua kaedah berikut.

  • Gunakan fungsi pengisihan tatasusunan

PHP menyediakan fungsi pengisihan tatasusunan yang berkuasa seperti sort() dan rsort(), yang boleh mengisih tatasusunan dua dimensi dalam menaik dan menurun pesanan Tunggu operasi pengisihan. Antaranya, fungsi sort() boleh mengisih tatasusunan dalam tertib menaik mengikut dimensi pertama, manakala fungsi rsort() boleh mengisih tatasusunan dalam tertib menurun. Jika kita mengisih tatasusunan mengikut nilai indeks tertentu, kita boleh mencapai kesan membalikkan. Contohnya, jika kita menggunakan kod berikut:

array_multisort(array_column($originalArr, "year"), SORT_DESC, $originalArr);

kita boleh mendapatkan tatasusunan baharu $flippedArr diisih dalam susunan terbalik mengikut tahun.

  • Gunakan kaedah rentas baris demi baris

Kaedah rentas baris demi baris merujuk kepada mengakses setiap elemen dalam tatasusunan dua dimensi satu demi satu, dan kemudian secara aktif menambah elemen padanya mengikut peraturan tertentu dalam tatasusunan baharu. Sebagai contoh, kita boleh menggunakan kod berikut:

$flippedArr = array();
foreach ($originalArr as $value) {
    $flippedArr[$value['year']] = $value;
}

Dengan cara ini kita boleh mendapatkan tatasusunan baharu terbalik yang sama.

  1. Ringkasan

Untuk pembangun PHP, menguasai operasi tatasusunan adalah amat penting. Antaranya, membalik tatasusunan ialah operasi biasa yang boleh membantu kami mengubah struktur tatasusunan dan meningkatkan kebolehbacaan dan kebolehselenggaraan kod. Melalui pengenalan artikel ini, kami memahami kaedah pelaksanaan flipping tatasusunan dua dimensi dan menggunakan kod contoh khusus untuk membantu pembaca menguasainya dengan lebih baik. Diharapkan para pembaca dapat menggunakan ilmu ini dengan berkesan dalam pembangunan harian dan menyumbang kepada kejayaan projek.

Atas ialah kandungan terperinci php flip tatasusunan dua dimensi. 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