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

array_diff का उपयोग करके यह कैसे निर्धारित करें कि एक ऐरे में दूसरे ऐरे के सभी मान शामिल हैं?

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

How to Determine if an Array Contains All Values from Another Array using array_diff?

ऐरे मान समावेशन की जांच करने के लिए array_diff का उपयोग करना

यह निर्धारित करना कि क्या किसी ऐरे में किसी अन्य ऐरे के सभी मान शामिल हैं, एक सामान्य प्रोग्रामिंग कार्य है। निम्नलिखित उदाहरण पर विचार करें:

दिए गए सरणियाँ $all और $search_this, इस प्रकार परिभाषित:

$all = array
(
    0 => 307,
    1 => 157,
    2 => 234,
    3 => 200,
    4 => 322,
    5 => 324
);
$search_this = array
(
    0 => 200,
    1 => 234
);

हमारा लक्ष्य यह सत्यापित करना है कि क्या $all में $search_this में मौजूद सभी तत्व शामिल हैं।

कुशल तुलना के लिए array_diff का उपयोग करना

इसे प्राप्त करने के लिए तुलना में, सबसे कुशल दृष्टिकोण array_diff फ़ंक्शन का उपयोग करना है, जो पहले सरणी में पाए गए तत्वों की एक सरणी लौटाता है लेकिन दूसरे में नहीं। इसे अपने मामले में लागू करके, हम यह निष्कर्ष निकाल सकते हैं कि क्या $all में $search_this से सभी मान शामिल हैं।

$containsAllValues = !array_diff($search_this, $all);

यदि परिणामी सरणी खाली है (यानी, कोई अंतर नहीं पाया गया है), इसका मतलब है कि $all में $search_this से सभी मान शामिल हैं। परिणामस्वरूप, $containsAllValues ​​सत्य पर सेट हो जाएगा। अन्यथा, यह झूठा होगा. यह विधि न्यूनतम जटिलता और सीधे कार्यान्वयन के साथ समस्या को प्रभावी ढंग से हल करती है।

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

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

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

Copyright© 2022 湘ICP备2022001581号-3