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

PHP में विशिष्ट कुंजी उपसर्ग के आधार पर ऐरे तत्व कैसे निकालें?

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

How to Extract Array Elements Based on a Specific Key Prefix in PHP?

उपसर्ग उपलब्धता के आधार पर सरणी तत्वों को निकालना

ऐसे परिदृश्य में जहां आपके पास अलग-अलग कुंजी उपसर्गों के साथ एक सरणी है, केवल उन तत्वों को निकालना जो इससे शुरू होते हैं एक विशेष उपसर्ग एक उपयोगी कार्य हो सकता है. आइए एक उदाहरण सरणी पर विचार करें:

array(
  'abc' => 0,
  'foo-bcd' => 1,
  'foo-def' => 1,
  'foo-xyz' => 0,
  // ...
)

चुनौती: केवल 'foo-' से शुरू होने वाले तत्वों को बनाए रखें।

कार्यात्मक दृष्टिकोण:

$array = array_filter($array, function($key) {
    return strpos($key, 'foo-') === 0;
}, ARRAY_FILTER_USE_KEY);

अनाम फ़ंक्शन के साथ array_filter फ़ंक्शन जांचता है कि प्रत्येक तत्व की कुंजी 'foo-' से शुरू होती है या नहीं। यदि यह शर्त पूरी हो जाती है, तो तत्व को संशोधित सरणी में बरकरार रखा जाता है।

प्रक्रियात्मक दृष्टिकोण:

$only_foo = array();
foreach ($array as $key => $value) {
    if (strpos($key, 'foo-') === 0) {
        $only_foo[$key] = $value;
    }
}

यह दृष्टिकोण सरणी पर पुनरावृत्ति करता है, 'foo-' उपसर्ग के लिए प्रत्येक कुंजी की जाँच करता है। यदि पाया जाता है, तो तत्व को एक नई सरणी में जोड़ा जाता है जिसमें केवल वे तत्व होते हैं जो मानदंड को पूरा करते हैं। ArrayIterator($array); $only_foo = सारणी(); जबकि ($i->मान्य()) { यदि (strpos($i->key(), 'foo-') === 0) { $only_foo[$i->key()] = $i->current(); } $i->अगला(); }

इस दृष्टिकोण के साथ, मूल सरणी को पार करने के लिए एक ArrayIterator ऑब्जेक्ट का उपयोग किया जाता है। 'foo-' उपसर्ग के लिए प्रत्येक कुंजी का निरीक्षण किया जाता है, और संबंधित तत्वों को एक नई सरणी में जोड़ा जाता है।

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

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

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

Copyright© 2022 湘ICP备2022001581号-3