Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP mengembalikan semua kunci tatasusunan untuk membentuk tatasusunan

PHP mengembalikan semua kunci tatasusunan untuk membentuk tatasusunan

王林
王林ke hadapan
2024-03-21 10:01:29295semak imbas

Editor PHP Strawberry akan memperkenalkan anda kepada teknik praktikal hari ini: cara menggabungkan semua kunci tatasusunan menjadi tatasusunan baharu. Dalam PHP, kita boleh menggunakan fungsi array_keys() untuk mencapai fungsi ini. Fungsi ini boleh mengembalikan tatasusunan baharu yang mengandungi semua kunci tatasusunan asal, membolehkan kami mengendalikan dan memproses kunci tatasusunan dengan mudah. Seterusnya, mari kita lihat kaedah pelaksanaan khusus!

PHP Dapatkan semua kunci tatasusunan:

Gambaran keseluruhan:

php menyediakan pelbagai kaedah untuk mendapatkan semua kunci dalam tatasusunan untuk membentuk tatasusunan baharu. Artikel ini akan meneroka kaedah ini dan nuansanya untuk membantu anda membuat pilihan termaklum berdasarkan keperluan khusus anda.

Kaedah:

1. kekunci_tatasusunan()

array_keys() Fungsi mengembalikan tatasusunan semua kunci dalam tatasusunan. Ia menerima tatasusunan sebagai parameter dan mengembalikan tatasusunan yang mengandungi nilai kunci.

$fruits = ["apple", "banana", "orange"];
$keys = array_keys($fruits); // [0, 1, 2]

2 keys() ialah alias bagi fungsi

dengan kelakuan dan penggunaan yang sama.

keys()array_keys()

3. peta_tatasusunan() + kunci_tatasusunan()

Kaedah ini menggunakan fungsi array_map() untuk menggunakan

pada setiap nilai dalam tatasusunan. Hasilnya ialah tatasusunan baharu yang mengandungi semua kunci.

$keys = array_map("array_keys", $fruits); // [0, 1, 2]
array_map() 函数将 array_keys()

4. lajur_tatasusunan()

Fungsi

boleh digunakan untuk mengekstrak nilai lajur tertentu daripada tatasusunan berbilang dimensi. Ia juga boleh digunakan sebagai kaedah alternatif untuk mengekstrak kunci.

$data = [
["id" => 1, "name" => "John"],
["id" => 2, "name" => "Mary"],
];
$keys = array_column($data, "id"); // [1, 2]
array_column()

5. gelung foreach

Kekunci akses.

$keys = [];
foreach ($fruits as $key => $value) {
$keys[] = $key;
}
foreach 循环可遍历数组中的每个元素,并通过使用键字 key

6. Antara muka Agregat Iterator

Melaksanakan kaedah

untuk mendapatkan iterator dan mendapatkan kunci daripadanya.

class MyArray implements IteratorAggregate {
public function getIterator() {
return new ArrayIterator($this->data);
}
}
$arr = new MyArray();
$keys = [];
foreach ($arr as $key => $value) {
$keys[] = $key;
}
IteratorAggregate 接口的对象可以通过迭代器访问键。可以使用 getIterator()

Perbandingan prestasi:

Berikut ialah perbandingan prestasi kasar kaedah yang berbeza:

    : terpantas
  • array_keys()
  • : lebih pantas
  • array_map() + array_keys()kunci(): Sama seperti
  • keys(): 与 array_keys()
  • : Cekap untuk tatasusunan berbilang dimensi
  • array_column()
  • Gelung: prestasi lemah
  • foreach
  • : Kerumitan tinggi
  • IteratorAggregate
Kaedah pemilihan:

Memilih kaedah yang paling sesuai dengan keperluan anda bergantung pada faktor berikut:

Struktur tatasusunan
  • Bilangan tatasusunan untuk diproses
  • Keutamaan Prestasi
  • Untuk tatasusunan ringkas dan kecil,
atau

ialah pilihan terbaik. Untuk tatasusunan besar dan berbilang dimensi, array_keys()array_map() + array_keys() 是最佳选择。对于大型和多维数组,array_column() 可能更合适。对于复杂的对象,IteratorAggregate mungkin lebih sesuai. Untuk objek kompleks,

ialah pilihan yang berdaya maju. 🎜

Atas ialah kandungan terperinci PHP mengembalikan semua kunci tatasusunan untuk membentuk tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:lsjlt.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam