Editor PHP Xinyi hari ini memperkenalkan anda kepada keperluan biasa dalam PHP: cara mengekstrak semua nilai dalam tatasusunan untuk membentuk tatasusunan baharu. Dalam PHP, kita boleh menggunakan fungsi array_values() untuk mencapai fungsi ini. Fungsi ini akan mengembalikan tatasusunan baharu yang mengandungi semua nilai tatasusunan asal, membolehkan kami mengendalikan atau memproses nilai tatasusunan selanjutnya. Seterusnya, mari kita lihat kaedah pelaksanaan khusus!
Gunakan fungsi array_values()
array_values()
Fungsi mengembalikan tatasusunan semua nilai dalam tatasusunan. Ia tidak mengekalkan kunci tatasusunan asal.
$array = ["foo" => "bar", "baz" => "qux"]; $values = array_values($array); // $values 将是 ["bar", "qux"]
Guna gelung
Anda boleh menggunakan gelung untuk mendapatkan semua nilai tatasusunan secara manual dan menambahkannya pada tatasusunan baharu.
$array = ["foo" => "bar", "baz" => "qux"]; $values = []; foreach ($array as $value) { $values[] = $value; } // $values 将是 ["bar", "qux"]
Gunakan fungsi range()
Jika tatasusunan ialah tatasusunan berterusan dari 0 hingga n-1, anda boleh menggunakan fungsi range()
untuk menjana tatasusunan yang mengandungi semua nilai.
$array = range(0, 4); // $array 将是 [0, 1, 2, 3, 4]
Gunakan fungsi array_map()
array_map()
boleh menggunakan fungsi panggil balik pada setiap nilai dalam tatasusunan. Anda boleh mendapatkan semua nilai tatasusunan dengan menggunakan fungsi tanpa nama.
$array = ["foo" => "bar", "baz" => "qux"]; $values = array_map(function ($value) { return $value; }, $array); // $values 将是 ["bar", "qux"]
Kembalikan nilai tatasusunan bersekutu
Jika anda perlu mengembalikan nilai tatasusunan bersekutu, anda boleh menggunakan fungsi array_column()
.
$array = ["foo" => "bar", "baz" => "qux"]; $values = array_column($array, "value"); // $values 将是 ["bar", "qux"]
Memproses tatasusunan berbilang dimensi
Jika tatasusunan berbilang dimensi, anda boleh menggunakan fungsi rekursif untuk mendapatkan semua nilai.
function get_array_values($array) { $values = []; foreach ($array as $value) { if (is_array($value)) { $values = array_merge($values, get_array_values($value)); } else { $values[] = $value; } } return $values; }
Pertimbangan prestasi
Pertimbangan prestasi harus dipertimbangkan apabila memilih kaedah untuk digunakan untuk mendapatkan semua nilai tatasusunan. Untuk tatasusunan kecil, fungsi gelung atau array_map()
函数通常是最快的选择。对于大型数组,array_values()
biasanya merupakan pilihan terpantas. Untuk tatasusunan yang besar, fungsi
Atas ialah kandungan terperinci PHP mengembalikan semua nilai dalam tatasusunan untuk membentuk tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!