Dalam artikel sebelumnya " Bagaimana untuk melintasi elemen tatasusunan dalam pembelajaran tatasusunan PHP? Dalam "Analisis Ringkas 4 Kaedah ", kami memperkenalkan 4 kaedah merentasi tatasusunan. Hari ini kita akan melihat nama kunci dan nilai kunci elemen tatasusunan, dan memperkenalkan kaedah menyemak sama ada nama/nilai kunci yang ditentukan wujud dalam tatasusunan PHP.
Mula-mula mari kita lihatBagaimana untuk mengesan sama ada nama kunci berada dalam tatasusunan? Malah, ia sangat mudah. Kita boleh menggunakan fungsi array_key_exists() terbina dalam untuk mengesannya.
Fungsi array_key_exists() boleh menyemak sama ada nama kunci yang ditentukan (atau indeks) wujud dalam tatasusunan; fungsi ini menerima dua parameter $key dan $array, yang digunakan untuk menentukan nama kunci dan tatasusunan. Mengembalikan benar jika nama kunci $key wujud dalam tatasusunan $array, dan mengembalikan palsu jika ia tidak wujud.
Mari kita ketahui lebih lanjut mengenainya melalui contoh kod.
<?php header("Content-type:text/html;charset=utf-8"); $array= array("姓名"=>"张三","年龄"=>25,"性别"=>"男"); var_dump($array); $key = '年龄'; if( array_key_exists($key, $array) ){ //检测数组中是否存在该键 echo "键名 '$key' 存在于数组中!"; } ?>
Hasil output:
Perbezaan utama antara isset() dan array_key_exists() fungsi:
Fungsi array_key_exists() akan memberitahu secara eksplisit sama ada kunci wujud dalam tatasusunan, manakala isset() hanya akan kembali benar jika kunci/pembolehubah wujud dan bukan nol. Selain itu, isset() tidak menyebabkan ralat apabila tatasusunan/pembolehubah tidak wujud, manakala array_key_exists() wujud.
Seterusnya mari kita lihat Bagaimana untuk mengesan sama ada nilai kunci terletak dalam tatasusunan? Ini juga mudah, kita boleh menggunakan fungsi terbina dalam in_array() untuk mengesan, jika nilai yang diberikan ditemui dalam tatasusunan yang diberikan, ia akan mengembalikan BENAR, jika tidak ia akan mengembalikan FALSE.
in_array($value,$array,$type)
boleh menyemak sama ada nilai yang ditentukan $array
wujud dalam tatasusunan yang ditentukan $value
dan parameter $type
boleh diabaikan.
Mari kita ketahui lebih lanjut mengenainya melalui contoh kod.
<?php header("Content-type:text/html;charset=utf-8"); $array= array("姓名"=>"张三","年龄"=>25,"性别"=>"男"); var_dump($array); $value = '张三'; if( in_array($value, $array) ){ //检测数组中是否存在该键名 echo "键名 '$value' 存在于数组中!"; } ?>
Hasil keluaran:
Parameter ketiga fungsi in_array() $type
diabaikan, tetapi jika nilai ditetapkan kepada benar , ia akan menyemak sama ada jenis data yang dicari dan nilai tatasusunan adalah sama. Pada ketika ini, fungsi mengembalikan benar hanya jika elemen wujud dalam tatasusunan dan mempunyai jenis data yang sama dengan nilai yang diberikan.
<?php header("Content-type:text/html;charset=utf-8"); $array= array("姓名"=>"张三","年龄"=>25,"性别"=>"男"); var_dump($array); $value = "25"; if( in_array($value, $array,true) ){ //检测数组中是否存在该键名 echo "键名 '$value' 存在于数组中!"; }else{ echo "键名 '$value' 不存在于数组中!"; } echo "<br>"; $value = 25; if( in_array($value, $array,true) ){ //检测数组中是否存在该键名 echo "键名 $value 存在于数组中!"; }else{ echo "键名 '$value' 不存在于数组中!"; } ?>
Hasil keluaran:
Dan jika parameter $value
ialah rentetan dan parameter $type
ditetapkan kepada benar, carian adalah sensitif saiz Tulis.
Itu sahaja jika anda ingin mengetahui perkara lain, anda boleh klik ini. → →tutorial video php
Disyorkan: 《Koleksi soalan temuduga PHP (koleksi)》
Atas ialah kandungan terperinci Tatasusunan PHP mempelajari cara menyemak sama ada terdapat nama/nilai kunci yang ditentukan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!