Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengetahui sama ada unsur dalam tatasusunan wujud dalam php

Bagaimana untuk mengetahui sama ada unsur dalam tatasusunan wujud dalam php

PHPz
PHPzasal
2023-04-25 09:09:36764semak imbas

PHP ialah bahasa pengaturcaraan fleksibel yang mampu mengurus dan memanipulasi pengumpulan data, seperti tatasusunan. Tatasusunan ialah salah satu jenis data yang paling biasa digunakan dalam PHP kerana ia menyediakan cara mudah untuk menyimpan dan mengakses data. Dalam artikel ini, kita akan membincangkan cara untuk mencari sama ada elemen dalam tatasusunan wujud dalam PHP.

Terdapat beberapa cara biasa untuk mencari elemen dalam tatasusunan dalam PHP Kami akan memperkenalkan kaedah ini seterusnya di bawah.

Kaedah 1: Gunakan fungsi in_array()

in_array() fungsi boleh digunakan untuk menentukan sama ada sesuatu nilai berada dalam tatasusunan Sintaks fungsi ini adalah seperti berikut:

in_array($needle, $haystack, $strict);

Antaranya, $needle ialah nilai elemen yang anda ingin cari; $haystack ialah tatasusunan yang anda mahu cari; Jika ditetapkan kepada benar, jenis juga mestilah sama untuk dianggap sebagai padanan.

Kod contoh:

$fruits = array('apple', 'orange', 'banana');
if(in_array('orange', $fruits)){
    echo 'orange 已经存在于数组中';
}else{
    echo 'orange 不存在于数组中';
}

Output: oren sudah wujud dalam tatasusunan

Kaedah 2: Gunakan fungsi array_search()

fungsi array_search() Boleh digunakan untuk mencari nama kunci elemen dalam tatasusunan. Sintaks fungsi ini adalah seperti berikut:

array_search($needle, $haystack, $strict);

di mana $needle ialah nilai elemen yang anda ingin cari; $hystack ialah tatasusunan yang anda mahu cari; digunakan untuk menentukan Sama ada hendak menggunakan mod ketat semasa mencari. Jika ditetapkan kepada benar, jenis juga mestilah sama untuk dianggap sebagai padanan.

Kod sampel:

$fruits = array('apple', 'orange', 'banana');
$key = array_search('orange', $fruits);
if($key !== false){
    echo 'orange 已经存在于数组中,键名为 '.$key;
}else{
    echo 'orange 不存在于数组中';
}

Output: oren sudah wujud dalam tatasusunan dengan nama kunci 1.

Perlu diambil perhatian bahawa fungsi array_search() mengembalikan nama kunci elemen dalam tatasusunan Jika ia tidak ditemui, ia mengembalikan palsu. Oleh itu, anda perlu menggunakan "!==" untuk menentukan sama ada elemen itu ditemui.

Kaedah 3: Gunakan fungsi isset()

fungsi isset() boleh digunakan untuk menentukan sama ada unsur wujud dalam tatasusunan. Sintaks fungsi ini adalah seperti berikut:

isset($array[$key]);

di mana $array ialah tatasusunan yang anda ingin cari; $key ialah nama kunci atau indeks elemen yang anda ingin cari.

Kod sampel:

$fruits = array('apple', 'orange', 'banana');
if(isset($fruits[1])){
    echo '数组中存在索引为 1 的元素';
}else{
    echo '数组中不存在索引为 1 的元素';
}

Output: Terdapat elemen dengan indeks 1 dalam tatasusunan.

Perlu diambil perhatian bahawa fungsi isset() hanya boleh digunakan untuk mencari sama ada nama kunci atau indeks wujud dalam tatasusunan, tetapi ia tidak dapat menentukan sama ada nilai elemen adalah nol atau rentetan kosong.

Kaedah 4: Gunakan fungsi array_key_exists()

fungsi array_key_exists() boleh digunakan untuk menentukan sama ada nama kunci wujud dalam tatasusunan. Sintaks fungsi ini adalah seperti berikut:

array_key_exists($key, $array);

di mana $key ialah nama kunci yang anda ingin cari;

Kod sampel:

$fruits = array('apple', 'orange', 'banana');
if(array_key_exists(1, $fruits)){
    echo '数组中存在索引为 1 的元素';
}else{
    echo '数组中不存在索引为 1 的元素';
}

Output: Terdapat elemen dengan indeks 1 dalam tatasusunan.

Perlu diambil perhatian bahawa fungsi array_key_exists() hanya boleh digunakan untuk mencari nama kunci dalam tatasusunan dan tidak boleh menentukan sama ada nilai elemen yang sepadan dengan nama kunci itu kosong.

Kaedah 5: Gunakan fungsi array_intersect()

Fungsi array_intersect() boleh digunakan untuk mencari persilangan dua tatasusunan, iaitu, untuk mencari elemen yang mereka kongsi. Sintaks fungsi ini adalah seperti berikut:

array_intersect($array1, $array2);

di mana $array1 dan $array2 ialah dua tatasusunan untuk dibandingkan.

Kod sampel:

$fruits1 = array('apple', 'orange', 'banana');
$fruits2 = array('orange', 'papaya', 'mango');
$common_fruits = array_intersect($fruits1, $fruits2);
if(count($common_fruits) > 0){
    echo '两个数组中存在共同元素:';
    print_r($common_fruits);
}else{
    echo '两个数组中不存在共同元素';
}

Output: Terdapat elemen biasa dalam dua tatasusunan: Tatasusunan ([1] => oren)

Perlu diingatkan bahawa array_intersect Fungsi () mengembalikan tatasusunan baharu yang mengandungi unsur biasa dalam dua tatasusunan. Jika kedua-dua tatasusunan tidak mempunyai unsur yang sama, tatasusunan kosong dikembalikan.

Ringkasnya, kami telah memperkenalkan lima kaedah biasa untuk mencari elemen dalam tatasusunan dalam PHP: fungsi in_array(), fungsi array_search(), isset() function, array_key_exists() fungsi dan array_intersect( ) fungsi. Dalam pengaturcaraan sebenar, anda harus memilih kaedah yang sesuai untuk memproses elemen dalam tatasusunan mengikut keperluan anda.

Atas ialah kandungan terperinci Bagaimana untuk mengetahui sama ada unsur dalam tatasusunan wujud dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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