Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Mencari Kunci untuk Nilai Tertentu dalam Tatasusunan Berbilang Dimensi?

Bagaimana untuk Mencari Kunci untuk Nilai Tertentu dalam Tatasusunan Berbilang Dimensi?

Mary-Kate Olsen
Lepaskan: 2024-12-11 05:57:13
asal
497 orang telah melayarinya

How to Find the Key for a Specific Value in a Multidimensional Array?

Mengenal pasti Kunci untuk Nilai Tatasusunan Tertentu

Apabila berurusan dengan tatasusunan berbilang dimensi, adalah perlu untuk mencari nilai tertentu dan mendapatkan kunci yang sepadan . Dalam senario ini, kami menyasarkan untuk mencari kunci untuk nilai tertentu dalam tatasusunan berbilang dimensi.

Cari Tatasusunan Menggunakan array_search()

Satu pendekatan untuk mencari tatasusunan ialah dengan gunakan fungsi array_search(), tersedia dalam PHP versi 5.5.0 dan ke atas. Fungsi ini memerlukan dua argumen: nilai sasaran dan tatasusunan untuk mencari dalam. Ia mengembalikan kunci yang dikaitkan dengan nilai sasaran jika ditemui, atau FALSE sebaliknya.

Contoh

Pertimbangkan tatasusunan berbilang dimensi berikut:

$products = [
    1 => [
        'slug' => 'breville-one-touch-tea-maker-BTM800XL',
        'name' => 'The Breville One-Touch Tea Maker',
    ],
    2 => [
        'slug' => 'breville-variable-temperature-kettle-BKE820XL',
        'name' => 'Breville Variable-Temperature Kettle BKE820XL',
    ],
];
Salin selepas log masuk

Untuk mencari kunci yang dikaitkan dengan slug breville-one-touch-tea-maker-BTM800XL:

$key = array_search('breville-one-touch-tea-maker-BTM800XL', array_column($products, 'slug'));
Salin selepas log masuk

Fungsi array_column() digunakan untuk mengekstrak nilai 'slug' daripada setiap subarray ke dalam tatasusunan satu dimensi, membolehkan array_search() berfungsi untuk melaksanakan carian dengan cekap.

Penyelesaian Alternatif Menggunakan array_search_multidim()

Untuk penyelesaian serba lengkap, anda boleh mentakrifkan fungsi tersuai seperti:

function array_search_multidim($array, $column, $key) {
    return (array_search($key, array_column($array, $column)));
}
Salin selepas log masuk

Fungsi ini membolehkan anda menghantar tatasusunan berbilang dimensi, nama lajur kepada cari dalam (cth., 'slug'), dan sasaran nilai.

Contoh

$key = array_search_multidim($products, 'slug', 'breville-one-touch-tea-maker-BTM800XL');
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Mencari Kunci untuk Nilai Tertentu dalam Tatasusunan Berbilang Dimensi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan