Bagaimana untuk menentukan sama ada nilai berada dalam tatasusunan dua dimensi dalam PHP (dua kaedah)

PHPz
Lepaskan: 2023-04-23 17:50:02
asal
1506 orang telah melayarinya

Dalam PHP, terdapat banyak cara untuk menentukan sama ada nilai berada dalam tatasusunan dua dimensi. Artikel ini akan memperkenalkan dua kaedah yang paling biasa digunakan.

Kaedah 1: Gunakan gelung foreach untuk melintasi

Kaedah ini lebih intuitif Anda boleh menggunakan gelung foreach untuk melintasi keseluruhan tatasusunan dua dimensi, dan kemudian tentukan sama ada setiap sub-tatasusunan mengandungi. nilai sasaran. Jika nilai sasaran ditemui, anda boleh mengembalikan benar secara langsung, jika tidak ia akan mengembalikan palsu selepas gelung berakhir.

Berikut ialah contoh kod:

function isValueInArray($array, $value) {
    foreach ($array as $subArray) {
        if (in_array($value, $subArray)) {
            return true;
        }
    }
    return false;
}
Salin selepas log masuk

Fungsi ini menerima dua parameter: tatasusunan dua dimensi untuk disoal dan nilai sasaran. Di dalam fungsi, kami menggunakan gelung foreach untuk melelaran melalui keseluruhan tatasusunan, dan menggunakan fungsi in_array untuk menentukan sama ada nilai sasaran wujud dalam setiap sub-tatasusunan. Jika nilai sasaran ditemui, anda boleh mengembalikan benar secara langsung, jika tidak ia akan mengembalikan palsu selepas gelung berakhir.

Kaedah 2: Gunakan fungsi array_column

Fungsi array_column PHP boleh mengembalikan semua nilai kunci yang ditentukan daripada tatasusunan dua dimensi. Kita boleh menggunakan fungsi ini untuk mendapatkan lajur dalam tatasusunan dua dimensi, dan kemudian gunakan fungsi in_array untuk menentukan sama ada nilai sasaran wujud dalam lajur. Jika ia wujud, ia boleh mengembalikan benar, jika tidak ia mengembalikan palsu.

Berikut ialah contoh kod:

function isValueInArray($array, $value) {
    foreach ($array as $subArray) {
        if (in_array($value, array_column($array, 'key'))) {
            return true;
        }
    }
    return false;
}
Salin selepas log masuk

Pelaksanaan fungsi ini pada asasnya adalah sama dengan fungsi di atas Perbezaannya ialah kita menggunakan fungsi array_column untuk mendapatkan kunci " " lajur dalam tatasusunan dua dimensi. Dan kemudian gunakan fungsi in_array untuk menentukan sama ada nilai sasaran muncul dalam lajur ini.

Ringkasan

Di atas ialah dua kaedah biasa untuk menentukan sama ada nilai berada dalam tatasusunan dua dimensi dalam PHP. Menggunakan gelung foreach adalah lebih intuitif, tetapi prestasi mungkin terjejas apabila tatasusunan adalah besar. Menggunakan fungsi array_column boleh mendapatkan lajur yang ditentukan dengan lebih cepat, tetapi fungsi ini mungkin tidak disokong untuk beberapa versi PHP yang lebih lama. Oleh itu, gabungan pertimbangan diperlukan semasa memilih kaedah yang hendak digunakan.

Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada nilai berada dalam tatasusunan dua dimensi dalam PHP (dua kaedah). 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan