"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > एकाधिक सहयोगी सारणियों को मर्ज करते समय साझा कुंजियों के मानों का योग कैसे करें?

एकाधिक सहयोगी सारणियों को मर्ज करते समय साझा कुंजियों के मानों का योग कैसे करें?

2024-11-04 को प्रकाशित
ब्राउज़ करें:955

How to Sum Values of Shared Keys When Merging Multiple Associative Arrays?

साझा कुंजियों के योग के साथ कई फ्लैट एसोसिएटिव ऐरे को मर्ज करना

जब array_merge() फ़ंक्शन के साथ एसोसिएटिव ऐरे को जोड़ते हैं, तो साझा कुंजियों से जुड़े मान सारांशित करने के बजाय प्रतिस्थापित किये जाने की प्रवृत्ति होती है। कई सहयोगी सरणियों से साझा कुंजियों के मूल्यों को जोड़ने का प्रयास करते समय यह एक चुनौती उत्पन्न करता है।

इस बाधा को दूर करने के लिए, कोई कई दृष्टिकोण अपना सकता है:

  • Foreach Iteration with त्रुटि दमन:
$sums = array();
foreach (array_keys($a1   $a2) as $key) {
    $sums[$key] = (isset($a1[$key]) ? $a1[$key] : 0)   (isset($a2[$key]) ? $a2[$key] : 0);
}
  • गुमनाम मैपिंग:
$keys = array_fill_keys(array_keys($a1   $a2), 0);
$sums = array_map(function ($a1, $a2) { return $a1   $a2; }, array_merge($keys, $a1), array_merge($keys, $a2));
  • संयुक्त समाधान:
$sums = array_fill_keys(array_keys($a1   $a2), 0);
array_walk($sums, function (&$value, $key, $arrs) { $value = @($arrs[0][$key]   $arrs[1][$key]); }, array($a1, $a2));
  • सरणी की मनमानी संख्या के लिए कस्टम फ़ंक्शन:
function array_sum_identical_keys() {
    $arrays = func_get_args();
    $keys = array_keys(array_reduce($arrays, function ($keys, $arr) { return $keys   $arr; }, array()));
    $sums = array();

    foreach ($keys as $key) {
        $sums[$key] = array_reduce($arrays, function ($sum, $arr) use ($key) { return $sum   @$arr[$key]; });
    }
    return $sums;
}

ये दृष्टिकोण कई सहयोगी सरणियों को मर्ज करने और साझा कुंजी से जुड़े मूल्यों को संक्षेप में प्रस्तुत करने के लिए लचीले समाधान प्रदान करते हैं।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3