$something['say'] 'bla' değerini veya varsa nasıl kontrol edebilirim 'omg'?
$something = array('say' => 'bla', 'say' => 'omg');
Sen PHP in_array fonksiyonu kullanabilirsiniz
if (in_array("bla", $something)) {
echo "has bla";
}
Bir dizi isset() veya hatta bazen daha iyi array_key_exists() (dokümantasyon farkları açıklar) tüm veya belli bir öğe olup olmadığını test edebilirsiniz. ': Undefined index .... uyarı' mesajları dizi indeksi ile bir elemanı o ilk ya da alabilirsiniz test etmelisiniz 'demek' varsa emin olamaz eğer.
Elemanın değeri izin vermez kullanabileceğiniz bir dize == ya da (yine bazen daha iyi) kimlik operatörü === eşit olup olmadığını test gelince type juggling.
if( isset($something['say']) && 'bla'===$something['say'] ) {
// ...
}
$search_array = array('user_from','lucky_draw_id','prize_id');
if (in_array('prize_id', $search_array)) {
echo "The 'prize_id' element is in the array";
}
/ / Burada çıktı> 'prize_id' öğesi dizide olduğu
$search_array = array('user_from','lucky_draw_id','prize_id');
if (array_key_exists('prize_id', $search_array)) {
echo "The 'prize_id' element is in the array";
}
/ / Burada çıktı> :)
Conclusion: array_key_exists not works with simple array, use in_array instead of that.
in_array () sadece kontrol ediyoruz eğer gayet iyi ama bir değer var olduğunu kontrol edin ve ilişkili anahtar dönmek gerekirse, array_search daha iyi bir seçenektir.
$data = array(
0 => 'hello',
1 => 'world'
);
$key = array_search('world', $data);
if ($key) {
echo 'Key is ' . $key;
} else {
echo 'Key not found';
}
Bu "Key 1" yazdıracak