संभव डुप्लिकेट संक्षेप द्वारा दो सरणियों विलय करने के लिए:
PHP: How to sum values of the array of the same keyकैसे मर्ज किए गए मूल्यों
मैं एक array_merge()
समारोह है कि मूल्यों को प्रतिस्थापित नहीं करता रहा हूँ, लेकिन उन्हें कहते हैं।
echo "<pre>";
$a1 = array(
"a" => 2
,"b" => 0
,"c" => 5
);
$a2 = array(
"a" => 3
,"b" => 9
,"c" => 7
,"d" => 10
);
$a3 = array_merge($a1, $a2);
print_r($a3);
दुख की बात है, यह इस आउटपुट:
उदाहरण के लिए, इस कोड को मैं कोशिश कर रहा हूँ है
Array
(
[a] => 3
[b] => 9
[c] => 7
[d] => 10
)
मैं तो कोशिश की array_merge
के बजाय,, बस दो सरणियों जोड़ने
$a3 = $a1 + $a2;
लेकिन यह आउटपुट
Array
(
[a] => 2
[b] => 0
[c] => 5
[d] => 10
)
जो मैं वास्तव में चाहता हूं वह आवश्यकतानुसार कई सरणी पास करने में सक्षम होना है, और फिर उनका योग प्राप्त करना है। तो मेरी उदाहरण में, मैं उत्पादन होना चाहते हैं:
Array
(
[a] => 5
[b] => 9
[c] => 12
[d] => 10
)
बेशक मैं कई foreach
आदि के साथ schlepp और कुछ समारोह का निर्माण कर सकते हैं, लेकिन देख रहा हूँ या एक होशियार, सफाई घोल। किसी भी संकेतक के लिए धन्यवाद!
ऐसा लगता है कि आप किस तरह की चीज लिखना चाहते हैं। मैं इसे किसी भी माध्यम से "schlepping" पर विचार नहीं करता, यह करना एक बिल्कुल अनूठी चीज है जो करना चाहता है। हालांकि मैं गलत साबित हो सकता था, लेकिन मुझे विश्वास नहीं है कि कोई मूल कार्य है जो इसे स्वयं ही संभाल सकता है। यदि कोई फ़ंक्शन लिखना समाधान है, तो क्या आपको अभी भी सहायता चाहिए? –
मेरा मानना है कि कोई अंतर्निहित फ़ंक्शन नहीं है जो यह कर सकता है, इस प्रश्न को जांचें: http://stackoverflow.com/questions/1496682/php-how-to-sum-values-of-the-array-of-the -समैम कुंजी –
प्रश्न गलत बना दिया गया है। 'array_merge' ** ** सभी ** कुंजी * बनाए रखने के दौरान दो सरणी विलय करता है। लेकिन आप * दो सरणी * की समान कुंजी के ** मान ** को जोड़ना चाहते हैं, जो कुछ और है। – deceze