Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menukar nilai tatasusunan dua dimensi ke dalam tatasusunan baharu dalam php

Bagaimana untuk menukar nilai tatasusunan dua dimensi ke dalam tatasusunan baharu dalam php

PHPz
PHPzasal
2023-04-23 09:09:59919semak imbas

Dengan perkembangan teknologi Internet yang berterusan, pembangunan Web telah menarik lebih banyak perhatian. Sebagai bahasa skrip berprestasi tinggi, PHP juga memainkan peranan penting dalam pembangunan Web. Dalam pembangunan PHP, tatasusunan dua dimensi ialah struktur data biasa, yang boleh digunakan untuk menyimpan berbilang rekod data untuk memudahkan operasi data ini. Artikel ini terutamanya memperkenalkan cara menggunakan PHP untuk menukar nilai tatasusunan dua dimensi kepada tatasusunan baharu.

Apakah tatasusunan dua dimensi

Dalam PHP, tatasusunan ialah struktur data yang sangat penting, yang terdiri daripada satu siri elemen tersusun, setiap elemen mempunyai kunci dan nilai yang sepadan. Tatasusunan dua dimensi ialah tatasusunan dengan dua dimensi Ia boleh menyimpan tatasusunan satu dimensi berbilang, dan setiap tatasusunan satu dimensi mempunyai kunci unik dan nilai yang sepadan.

Berikut ialah contoh mudah yang menunjukkan cara mencipta tatasusunan dua dimensi:

$students = array(
    array("name"=>"小明", "age"=>18, "gender"=>"男"),
    array("name"=>"小红", "age"=>20, "gender"=>"女"),
    array("name"=>"小刚", "age"=>19, "gender"=>"男")
);

Kod di atas mencipta tatasusunan dua dimensi yang mengandungi tiga tatasusunan satu dimensi, satu untuk setiap tatasusunan mewakili maklumat asas pelajar, termasuk nama, umur dan jantina.

Cara menukar nilai tatasusunan dua dimensi kepada tatasusunan baharu

Apabila kita perlu melakukan pemprosesan kompleks pada tatasusunan dua dimensi, menukarnya kepada tatasusunan baharu ialah cara yang sangat mudah. Mari perkenalkan cara menggunakan PHP untuk menukar nilai tatasusunan dua dimensi kepada tatasusunan baharu.

  1. fungsi array_column

PHP menyediakan array_column fungsi yang sangat mudah, yang boleh digunakan untuk mendapatkan nilai lajur tertentu daripada tatasusunan dua dimensi dan memformatkannya sebagai pulangan tatasusunan baharu. Sintaks fungsi ini adalah seperti berikut:

array array_column(array $input, mixed $column_key [, mixed $index_key = null])

Antaranya, parameter $input ialah tatasusunan dua dimensi yang akan diproses, parameter $column_key ialah nama lajur atau kunci angka yang ditentukan, dan Parameter $index_key ialah parameter pilihan untuk Tentukan nama kunci tatasusunan baharu. Berikut ialah contoh:

$students = array(
    array("name"=>"小明", "age"=>18, "gender"=>"男"),
    array("name"=>"小红", "age"=>20, "gender"=>"女"),
    array("name"=>"小刚", "age"=>19, "gender"=>"男")
);

$names = array_column($students, "name");
print_r($names);

Kod di atas akan mendapat lajur bernama "nama" daripada tatasusunan $students dan menyimpannya sebagai tatasusunan $nama baru. Keputusan output adalah seperti berikut:

Array
(
    [0] => 小明
    [1] => 小红
    [2] => 小刚
)
  1. gelung foreach

Selain menggunakan fungsi array_column, kita juga boleh menggunakan gelung foreach untuk menukar dua- tatasusunan dimensi menjadi tatasusunan baharu. Berikut ialah contoh mudah:

$students = array(
    array("name"=>"小明", "age"=>18, "gender"=>"男"),
    array("name"=>"小红", "age"=>20, "gender"=>"女"),
    array("name"=>"小刚", "age"=>19, "gender"=>"男")
);

$names = array();
foreach ($students as $student) {
    $names[] = $student["name"];
}
print_r($names);

Kod di atas mula-mula mencipta tatasusunan kosong $nama, dan kemudian merentasi setiap tatasusunan satu dimensi dalam tatasusunan $pelajar melalui gelung foreach untuk mendapatkan "nama" yang sepadan " nilai kunci dan tambahkannya pada tatasusunan $names. Keputusan output adalah seperti berikut:

Array
(
    [0] => 小明
    [1] => 小红
    [2] => 小刚
)
  1. fungsi peta_susun

Selain daripada dua kaedah di atas, kita juga boleh menggunakan fungsi peta_susun untuk menukar nilai ​daripada tatasusunan dua dimensi menjadi tatasusunan baharu. Fungsi array_map menggunakan fungsi panggil balik untuk setiap elemen dalam tatasusunan dan mengembalikan tatasusunan baharu. Berikut ialah contoh:

$students = array(
    array("name"=>"小明", "age"=>18, "gender"=>"男"),
    array("name"=>"小红", "age"=>20, "gender"=>"女"),
    array("name"=>"小刚", "age"=>19, "gender"=>"男")
);

$names = array_map(function($student) {
    return $student["name"];
}, $students);

print_r($names);

Kod di atas mula-mula mentakrifkan fungsi panggil balik tanpa nama, yang digunakan untuk mendapatkan nilai "nama" bagi setiap tatasusunan satu dimensi dalam tatasusunan $students dan menggunakannya sebagai elemen tatasusunan baharu. Selepas itu, gunakan fungsi array_map untuk melaksanakan fungsi panggil balik dan bentuk elemen yang dikembalikan ke dalam tatasusunan $nama baru. Outputnya adalah seperti berikut:

Array
(
    [0] => 小明
    [1] => 小红
    [2] => 小刚
)

Ringkasan

Di atas memperkenalkan tiga kaedah biasa yang boleh digunakan untuk menukar nilai tatasusunan dua dimensi dalam PHP kepada tatasusunan baharu . Sama ada anda menggunakan fungsi array_column, foreach loop atau array_map fungsi, anda boleh mencapai kesan yang sama, dengan kelebihan dan kekurangannya sendiri. Dalam projek sebenar, kaedah yang paling sesuai harus dipilih berdasarkan situasi tertentu.

Atas ialah kandungan terperinci Bagaimana untuk menukar nilai tatasusunan dua dimensi ke dalam tatasusunan baharu 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