2009-08-30 15 views
141

मेरे पास एक मौजूदा सरणी है जिसमें मैं एक मूल्य जोड़ना चाहता हूं।array_push() कुंजी मान जोड़ी

मैं array_push() का उपयोग करने के लिए कोई फायदा नहीं उठा रहा हूं।

$data = array(
    "dog" => "cat" 
); 

array_push($data['pussy'], 'wagon'); 

क्या मैं हासिल करना चाहते हैं बिल्ली इतनी के रूप में यह नीचे झलकी में उपयोग करने के लिए वैगन साथ $data सरणी के लिए एक कुंजी के रूप में जोड़ने के लिए मूल्य के रूप में:

नीचे मेरी कोड है :

echo $data['pussy']; // the expected output is: wagon 

मैं इसे कैसे प्राप्त कर सकता हूं?

उत्तर

248

तो क्या हुआ के बारे में हो रही:

$data['pussy']='wagon'; 
+0

का उपयोग कर बना रहा है यदि बिल्ली एक चर में है तो क्या होगा? $ बिल्ली = 'बिल्ली'; $ डेटा [$ बिल्ली] = 'वैगन'; इसे आज़माकर और यह मुझे एक त्रुटि देता है – Dynelight

+0

@Dinelight यह मुझे कोई त्रुटि नहीं देता है; आप वास्तव में क्या त्रुटि प्राप्त कर रहे थे? –

+1

उत्तर और हास्य के लिए धन्यवाद। ;-) –

29
$data['pussy'] = 'wagon'; 

सब आप सरणी के लिए कुंजी और मान जोड़ने की आवश्यकता है यही कारण है कि।

29

यदि आपको एकाधिक कुंजी => मान जोड़ने की आवश्यकता है, तो इसे आज़माएं।

$data = array_merge($data, array("pussy"=>"wagon","foo"=>"baar")); 
+0

यह सरणी में कोई भी मूल्य नहीं जोड़ता है। –

+2

यह मौजूदा कुंजी जोड़ता है या बदलता है। आरटीएफएम कृपया। –

2

उदाहरण के लिए:

$data = array('firstKey' => 'firstValue', 'secondKey' => 'secondValue'); 

कुंजी मान को परिवर्तित करने के लिए:

$data['firstKey'] = 'changedValue'; 
//this will change value of firstKey because firstkey is available in array 

उत्पादन:

सरणी ([firstKey] => changedValue [secondKey] => दूसरा वैल्यू)

नया कुंजी मान युग्म जोड़ने के लिए:

$data['newKey'] = 'newValue'; 
//this will add new key and value because newKey is not available in array 

उत्पादन:

सरणी ([firstKey] => firstValue [secondKey] => secondValue [newKey] => newValue)

-2

बस ऐसा करें:

$data = [ 
    "dog" => "cat" 
]; 

array_push($data, ['pussy' => 'wagon']); 

* PHP 7 और उच्चतर में, सरणी [], नहीं()

+0

दो समस्याएं: 'array_push' अपने दूसरे + पैरामीटर को नए मानों के रूप में जोड़ती है (कुंजी-मूल्य जोड़ी' array_merge' के रूप में नहीं होती है), और PHP 7 खुशी से 'सरणी()' सरणी वाक्यविन्यास (साथ ही शॉर्टंड '[]' वाक्य - विन्यास) –

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