2012-04-16 7 views
17

संभव डुप्लिकेट:
How to check if an array element exists?कैसे जानने के लिए कि कुंजी JSON स्ट्रिंग में मौजूद है

माफी माँगता हूँ अगर मैं गलत हूँ, मैं PHP के लिए नया हूँ, वहाँ किसी भी तरह से है कि क्या पता लगाने के लिए है PHP में json_decode फ़ंक्शन का उपयोग करके डीकोडिंग के बाद Json स्ट्रिंग में कुंजी मौजूद है।

$json = {"user_id":"51","password":"abc123fo"}; 

संक्षिप्त:

$json = {"password":"abc123fo"}; 
$mydata = json_decode($json,true); 
user_id = $mydata['user_id']; 

तो json स्ट्रिंग user_id से मिलकर बनता है नहीं है, यह Undefined index user_id की तरह एक अपवाद फेंकता है, तो वहाँ है कि क्या कुंजी JSON स्ट्रिंग में मौजूद है की जाँच करने के लिए किसी भी तरह है, कृपया मेरी मदद करो , मैं PHP 5.3 and Codeigniter 2.1 MVC का उपयोग कर रहा हूं अग्रिम धन्यवाद

+0

लौट डॉक्स पढ़ना मदद कर सकता है जाएगा: http://www.php.net/manual/en/function.array-key-exists.php –

उत्तर

19

आप array_key_exists को आजमा सकते हैं।

यह एक बूलियन मान देता है, तो आप इसे कुछ तरह के लिए खोज कर सकते हैं:

if(array_key_exists('user_id', $mydata)) { 
    //key exists, do stuff 
} 
37

आप isset

if(isset($mydata['user_id'])){ 
    // do something 
} 

यानी उपयोग कर सकते हैं आप भी जाँच करना चाहते हैं, तो मूल्य null नहीं है array_key_exists और isset के बीच का अंतर यह है कि

$json = {"user_id": null} 

array_key_exists वापस आ जाएगी true जबकि issetfalse

संबंधित मुद्दे