जवाबों:
का उपयोग करते हुए: in_array()
$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";
}
यहाँ उत्पादन है: The 'prize_id' element is in the array
का उपयोग करते हुए: array_key_exists()
$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";
}
उत्पादन नही
अंत में, array_key_exists()एक साधारण सरणी के साथ काम नहीं करता है। यह केवल यह जानने के लिए है कि कोई सरणी कुंजी मौजूद है या नहीं। in_array()इसके बजाय उपयोग करें ।
यहाँ अधिक उदाहरण है:
<?php
/**++++++++++++++++++++++++++++++++++++++++++++++
* 1. example with assoc array using in_array
*
* IMPORTANT NOTE: in_array is case-sensitive
* in_array — Checks if a value exists in an array
*
* DOES NOT WORK FOR MULTI-DIMENSIONAL ARRAY
*++++++++++++++++++++++++++++++++++++++++++++++
*/
$something = array('a' => 'bla', 'b' => 'omg');
if (in_array('omg', $something)) {
echo "|1| The 'omg' value found in the assoc array ||";
}
/**++++++++++++++++++++++++++++++++++++++++++++++
* 2. example with index array using in_array
*
* IMPORTANT NOTE: in_array is case-sensitive
* in_array — Checks if a value exists in an array
*
* DOES NOT WORK FOR MULTI-DIMENSIONAL ARRAY
*++++++++++++++++++++++++++++++++++++++++++++++
*/
$something = array('bla', 'omg');
if (in_array('omg', $something)) {
echo "|2| The 'omg' value found in the index array ||";
}
/**++++++++++++++++++++++++++++++++++++++++++++++
* 3. trying with array_search
*
* array_search — Searches the array for a given value
* and returns the corresponding key if successful
*
* DOES NOT WORK FOR MULTI-DIMENSIONAL ARRAY
*++++++++++++++++++++++++++++++++++++++++++++++
*/
$something = array('a' => 'bla', 'b' => 'omg');
if (array_search('bla', $something)) {
echo "|3| The 'bla' value found in the assoc array ||";
}
/**++++++++++++++++++++++++++++++++++++++++++++++
* 4. trying with isset (fastest ever)
*
* isset — Determine if a variable is set and
* is not NULL
*++++++++++++++++++++++++++++++++++++++++++++++
*/
$something = array('a' => 'bla', 'b' => 'omg');
if($something['a']=='bla'){
echo "|4| Yeah!! 'bla' found in array ||";
}
/**
* OUTPUT:
* |1| The 'omg' element value found in the assoc array ||
* |2| The 'omg' element value found in the index array ||
* |3| The 'bla' element value found in the assoc array ||
* |4| Yeah!! 'bla' found in array ||
*/
?>
यहाँ है PHP DEMO
array_key_exists()सरणी कुंजियों के लिए चेक, जबकि बाद $search_arrayमें साहचर्य सरणी शामिल हैं। कोई शक नहीं कि यह काम नहीं करेगा। आपको array_flip()इसे पहले करना चाहिए ।
आप उपयोग कर सकते हैं:
array_search()in_array()array_flip()औरarray_key_exists()यह जाँचने के लिए कि क्या सूचकांक परिभाषित है: isset($something['say'])
आप परीक्षण कर सकते हैं कि क्या किसी सरणी में एक निश्चित तत्व है या नहीं (isset) या कभी-कभी इससे भी बेहतर array_key_exists () (दस्तावेज़ीकरण में अंतर बताते हैं)। यदि आप सुनिश्चित नहीं कर सकते हैं कि सरणी में सूचकांक के साथ एक तत्व है 'तो' आपको यह परीक्षण करना चाहिए कि पहले या आपको 'चेतावनी: अपरिभाषित सूचकांक ....' संदेश मिल सकता है।
परीक्षण के लिए कि क्या तत्व का मूल्य एक स्ट्रिंग के बराबर है जो आप == या (फिर कभी-कभी बेहतर) पहचान ऑपरेटर === का उपयोग कर सकते हैं जो टाइप जुगाड़ की अनुमति नहीं देता है ।
if( isset($something['say']) && 'bla'===$something['say'] ) {
// ...
}
in_array () ठीक है यदि आप केवल जाँच कर रहे हैं, लेकिन यदि आपको यह जाँचने की आवश्यकता है कि कोई मान मौजूद है और संबंधित कुंजी को वापस करना है, तो array_search एक बेहतर विकल्प है।
$data = [
'hello',
'world'
];
$key = array_search('world', $data);
if ($key) {
echo 'Key is ' . $key;
} else {
echo 'Key not found';
}
यह "कुंजी 1 है" प्रिंट करेगा
बस PHP फ़ंक्शन का उपयोग करें array_key_exists()
<?php
$search_array = array('first' => 1, 'second' => 4);
if (array_key_exists('first', $search_array)) {
echo "The 'first' element is in the array";
}
?>
<?php
if (in_array('your_variable', $Your_array)) {
$redImg = 'true code here';
} else {
$redImg = 'false code here';
}
?>
bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )
सुई के रूप में एक सरणी के साथ in_array in_array () का एक और उपयोग
<?php
$a = array(array('p', 'h'), array('p', 'r'), 'o');
if (in_array(array('p', 'h'), $a)) {
echo "'ph' was found\n";
}
if (in_array(array('f', 'i'), $a)) {
echo "'fi' was found\n";
}
if (in_array('o', $a)) {
echo "'o' was found\n";
}
?>
मान लें कि आप एक साधारण सरणी का उपयोग कर रहे हैं
। अर्थात
$MyArray = array("red","blue","green");
आप इस फ़ंक्शन का उपयोग कर सकते हैं
function val_in_arr($val,$arr){
foreach($arr as $arr_val){
if($arr_val == $val){
return true;
}
}
return false;
}
उपयोग:
val_in_arr("red",$MyArray); //returns true
val_in_arr("brown",$MyArray); //returns false