Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menentukan sama ada nilai kunci yang ditentukan wujud dalam tatasusunan dua dimensi dalam PHP

Bagaimana untuk menentukan sama ada nilai kunci yang ditentukan wujud dalam tatasusunan dua dimensi dalam PHP

PHPz
Lepaskan: 2023-04-20 14:28:20
asal
1004 orang telah melayarinya

Untuk tatasusunan dua dimensi PHP, kita selalunya perlu menentukan sama ada pasangan nilai kunci wujud dalam tatasusunan Artikel ini akan memperkenalkan beberapa kaedah biasa.

  1. Gunakan fungsi in_array

Fungsi in_array boleh digunakan untuk menentukan sama ada nilai wujud dalam tatasusunan, tetapi ia hanya boleh menentukan sama ada nilai wujud dalam satu tatasusunan -dimensi dan tidak dapat menentukan sama ada ia dalam tatasusunan dua dimensi. Kita boleh menggunakan fungsi in_array_recursive variannya untuk menentukan secara rekursif sama ada pasangan nilai kunci dalam tatasusunan dua dimensi wujud.

Kod sampel:

function in_array_recursive($needle, $haystack, $strict = false)
{
    foreach ($haystack as $value) {
        if ((!$strict && $needle == $value) || ($strict && $needle === $value)) {
            return true;
        }
        if (is_array($value) && in_array_recursive($needle, $value, $strict)) {
            return true;
        }
    }
    return false;
}

$array = array(
    array('id' => 1, 'name' => '张三'),
    array('id' => 2, 'name' => '李四'),
    array('id' => 3, 'name' => '王五'),
);

if (in_array_recursive(array('id' => 1, 'name' => '张三'), $array)) {
    echo '存在';
} else {
    echo '不存在';
}
Salin selepas log masuk
  1. Gunakan fungsi array_column

fungsi array_column boleh mengekstrak lajur dalam tatasusunan dua dimensi sebagai yang baharu- Tatasusunan dimensi, kita boleh menggunakannya untuk menentukan sama ada kunci wujud dalam tatasusunan.

Kod sampel:

$array = array(
    array('id' => 1, 'name' => '张三'),
    array('id' => 2, 'name' => '李四'),
    array('id' => 3, 'name' => '王五'),
);

$ids = array_column($array, 'id');

if (in_array(1, $ids)) {
    echo '存在';
} else {
    echo '不存在';
}
Salin selepas log masuk
  1. Gunakan fungsi array_search

fungsi array_search boleh mencari lokasi nilai kunci dalam tatasusunan, jika dijumpai Mengembalikan indeks kunci ini, jika tidak mengembalikan palsu. Walau bagaimanapun, ia hanya boleh mencari tatasusunan satu dimensi dan tidak dapat mencari pasangan nilai kunci dalam tatasusunan dua dimensi. Kita boleh menggunakan parameter ketiganya untuk menentukan nilai kunci carian.

Kod sampel:

$array = array(
    array('id' => 1, 'name' => '张三'),
    array('id' => 2, 'name' => '李四'),
    array('id' => 3, 'name' => '王五'),
);

foreach ($array as $key => $value) {
    if (array_search(1, $value)) {
        echo '存在';
        break;
    } else {
        echo '不存在';
    }
}
Salin selepas log masuk

Di atas ialah tiga kaedah penilaian tatasusunan dua dimensi yang biasa Anda boleh memilih kaedah yang sesuai mengikut situasi tertentu.

Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada nilai kunci yang ditentukan wujud dalam tatasusunan dua dimensi dalam PHP. 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