एक एकीकृत सरणी बनाने के लिए कुंजी के विभिन्न सेटों के साथ एसोसिएटिव एरेज़ का संयोजन चुनौतीपूर्ण हो सकता है। यह प्रश्न इसे प्राप्त करने के लिए एक विधि की खोज करता है, और वांछित आउटपुट एक सरणी है जहां कुंजियाँ विलय कर दी जाती हैं और लापता कॉलम डिफ़ॉल्ट मान से भरे जाते हैं।
इसे पूरा करने के लिए, array_merge फ़ंक्शन को संयोजन में नियोजित करने का सुझाव दिया गया था कुंजियों की सावधानीपूर्वक तैयार की गई सरणी के साथ:
$keys = array(); foreach(new RecursiveIteratorIterator(new RecursiveArrayIterator($d)) as $key => $val) { $keys[$key] = ''; }
यह लूप इनपुट सरणी में सभी तत्वों पर पुनरावृत्त होता है, अद्वितीय कुंजी निकालता है और उन्हें खाली मान निर्दिष्ट करता है। परिणामी $keys सरणी में वे सभी संभावित कुंजियाँ शामिल हैं जो अंतिम मर्ज किए गए सरणी में मौजूद हो सकती हैं।
इसके बाद, प्रत्येक इनपुट सरणी को $keys सरणी के साथ मर्ज कर दिया जाता है:
$data = array(); foreach($d as $values) { $data[] = array_merge($keys, $values); }
यह चरण सुनिश्चित करता है कि अंतिम सरणी में प्रत्येक पंक्ति में सभी संभावित कुंजियाँ हैं, किसी भी लापता मान को एक खाली स्ट्रिंग से भरा गया है। परिणामी $ डेटा सरणी वांछित मर्ज की गई और पूर्ण की गई सरणी है। array_merge', $d)); $key_pair = array_combine($keys, array_fill(0, count($keys), null)); $मान = array_map(फ़ंक्शन($e) उपयोग ($key_pair) { वापसी array_merge($key_pair, $e); }, $d);
यह विधि अनिवार्य रूप से शून्य मानों के लिए सभी संभावित कुंजियों का एक मानचित्र बनाती है। फिर प्रत्येक इनपुट ऐरे को $key_pair ऐरे के साथ मर्ज कर दिया जाता है, जिससे पिछले दृष्टिकोण के समान परिणाम प्राप्त होता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3