Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menukar tatasusunan dua dimensi kepada rentetan dalam php
Langkah penukaran: 1. Gunakan fungsi array_reduce() untuk menukar tatasusunan dua dimensi kepada tatasusunan satu dimensi Sintaks "array_reduce(array_reduce(array_merge', array())" akan mengembalikan tatasusunan dua dimensi yang mengandungi Tatasusunan satu dimensi bagi semua nilai elemen dalam tatasusunan 2. Gunakan fungsi implode() untuk menukar tatasusunan satu dimensi kepada rentetan, sintaksnya ialah "implode("separator; ", tatasusunan satu dimensi)".
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi PHP 8.1, komputer DELL G3
Dalam PHP, anda boleh menggunakan array_reduce () function dan implode() berfungsi untuk menukar tatasusunan dua dimensi kepada rentetan.
Langkah pelaksanaan:
Langkah 1: Gunakan fungsi array_reduce() untuk menukar tatasusunan dua dimensi kepada tatasusunan satu dimensi
Fungsi array_reduce() menghantar nilai dalam tatasusunan kepada fungsi yang ditentukan pengguna dan mengembalikan rentetan.
array_reduce(array,myfunction,initial)
参数 | 描述 |
---|---|
array | 必需。规定数组。 |
myfunction | 必需。规定函数的名称。 |
initial | 可选。规定发送到函数处理的第一个值。 |
Anda hanya perlu menggunakan array_reduce() untuk memanggil fungsi array_merge() untuk menukar tatasusunan dua dimensi kepada tatasusunan satu dimensi
$result = array_reduce($user, function ($result, $value) { return array_merge($result, array_values($value)); }, array())
Kerana fungsi array_merge akan menukar aksara yang sama Tatasusunan nama kunci rentetan ditulis ganti dan digabungkan, jadi nilai mesti diambil menggunakan array_value sebelum digabungkan.
Jika dimensi kedua ialah nama kunci berangka, maka lakukan ini sahaja:
$result = array_reduce($user, 'array_merge', array())
akan mengembalikan tatasusunan satu dimensi yang mengandungi semua nilai elemen dalam tatasusunan dua dimensi, contoh:
array(100, 'a1'), 'b' => array(101, 'a2'), 'c' => array(102, 'a3'), 'd' => array(103, 'a4'), 'e' => array(104, 'a5'), ); echo "原二维数组:"; var_dump($user); $result = array_reduce($user, 'array_merge', array()); echo "转为一维数组后:"; var_dump($result); ?>
Langkah 2: Gunakan fungsi implode() untuk menukar tatasusunan satu dimensi kepada rentetan
fungsi implode( ) boleh menukar tatasusunan satu dimensi kepada rentetan Format sintaks adalah seperti berikut:
implode([$glue,]$array)
$glue digunakan untuk menetapkan rentetan, yang bermaksud menggunakan $glue untuk menukar setiap elemen tatasusunan Elemen disambungkan bersama Secara lalai, $glue ialah rentetan kosong
$array ialah tatasusunan yang perlu ditukar; .
Nota: Parameter $glue bagi fungsi implode() adalah pilihan dan boleh diabaikan penyambung lalai ialah "" (rentetan kosong).
array(100, 'a1'), 'b' => array(101, 'a2'), 'c' => array(102, 'a3'), 'd' => array(103, 'a4'), 'e' => array(104, 'a5'), ); echo "原二维数组:"; var_dump($user); $result = array_reduce($user, 'array_merge', array()); echo "转为一维数组后:"; var_dump($result); echo "转为字符串后:"; var_dump(implode("",$result)); var_dump(implode("-",$result)); var_dump(implode(" ",$result)); ?>
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan dua dimensi kepada rentetan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!