PHP में एसोसिएटिव ऐरे का पहला की: 5 कारगर तरीके

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

PHP में एसोसिएटिव ऐरे का पहला की: एक ऐसी समस्या जो एक्सपर्ट्स को भी चकरा देती है

\n\n

क्या आपने कभी ऐसी स्थिति का सामना किया है जब आपको PHP में एसोसिएटिव ऐरे का पहला की निकालना हो, लेकिन सही तरीका नहीं पता हो? यह सवाल Stack Overflow पर सबसे लोकप्रिय में से एक है (हजारों व्यूज!)। और यह कोई आश्चर्य की बात नहीं है: पहली नज़र में सरल लगने वाली यह समस्या कई पेचीदगियों को छिपाए हुए है।

\n\n

इस लेख में हम PHP ऐरे का पहला की पाने के 5 सिद्ध तरीके देखेंगे, पुराने क्लासिक तरीकों से लेकर आधुनिक तरीकों तक। आप जानेंगे कि PHP वर्जन, ऐरे के प्रकार और आपकी ज़रूरतों के आधार पर कौन सा तरीका चुनना चाहिए। चलिए शुरू करते हैं!

\n\n

यह समस्या क्यों है? PHP में एसोसिएटिव ऐरे की खासियतें

\n\n

सख्ती से टाइप की गई भाषाओं के विपरीत, PHP में एसोसिएटिव ऐरे एक हाइब्रिड है: यह एक साथ लिस्ट और डिक्शनरी दोनों हो सकता है। की संख्याएँ, स्ट्रिंग्स या मिश्रित हो सकते हैं। और एलिमेंट्स का क्रम केवल PHP 7.0+ में कुछ खास परिदृश्यों में ही सुरक्षित रहता है।

\n\n

इसलिए सीधे $array[0] लेना कोई विकल्प नहीं है। इससे आपको की "0" पर वैल्यू मिलेगी, न कि पहला एलिमेंट। हमें चाहिए PHP ऐरे का पहला की, चाहे उसकी वैल्यू कुछ भी हो।

\n\n

तरीका 1: array_key_first() — आधुनिक और तेज़ (PHP 7.3+)

\n\n

PHP 7.3 से शुरू होकर, एक बिल्ट-इन फंक्शन array_key_first() आया। यह एसोसिएटिव ऐरे का पहला की पाने का सबसे सरल और सबसे कारगर तरीका है।

\n\n
<?php\n$user = [\n    'name' => 'अन्ना',\n    'email' => 'anna@example.com',\n    'role' => 'admin'\n];\n\n$firstKey = array_key_first($user);\necho $firstKey; // आउटपुट: name\n?>
\n\n

फायदे:

\n
    \n
  • बेहद छोटा कोड
  • \n
  • मूल ऐरे को नहीं बदलता
  • \n
  • O(1) में काम करता है — ऐरे की कॉपी नहीं बनाता
  • \n
\n\n

नुकसान: इसके लिए PHP 7.3 या उससे नया वर्जन चाहिए। अगर आपका प्रोजेक्ट पुराने वर्जन पर है, तो आगे पढ़ें।

\n\n

तरीका 2: reset() + key() — क्लासिक तरीका

\n\n

यह फंक्शन्स की जोड़ी php array first key निकालने का क्लासिक तरीका है, जो सभी वर्जन पर काम करता है। reset() फंक्शन ऐरे के आंतरिक पॉइंटर को पहले एलिमेंट पर ले जाता है, और key() उसका की लौटाता है।

\n\n
<?php\n$config = [\n    'database' => 'mysql',\n    'host' => 'localhost',\n    'port' => 3306\n];\n\n$firstKey = key(reset($config));\necho $firstKey; // आउटपुट: database\n?>
\n\n

महत्वपूर्ण! reset() ऐरे के आंतरिक पॉइंटर को बदल देता है। अगर आप बाद में ऐरे पर लूप करेंगे, तो इससे अप्रत्याशित परिणाम हो सकते हैं। साइड इफेक्ट से बचने के लिए, ऐरे की कॉपी का उपयोग करें:

\n\n
<?php\n$firstKey = key(reset(array_slice($config, 0, 1)));\n?>
\n\n

लेकिन यह कम सुंदर है। एक बार के ऑपरेशन के लिए, यह एक बढ़िया विकल्प है।

\n\n

तरीका 3: array_keys() + [0] — स्पष्ट और समझने में आसान

\n\n

अगर आपको सिर्फ PHP ऐरे का पहला की ही नहीं, बल्कि बाकी सभी की भी चाहिए, तो array_keys() आपके लिए है। यह फंक्शन सभी की की एक ऐरे लौटाता है, और हम उसका पहला एलिमेंट ले लेते हैं।

\n\n
<?php\n$fruits = [\n    'apple' => 'सेब',\n    'banana' => 'केला',\n    'cherry' => 'चेरी'\n];\n\n$keys = array_keys($fruits);\n$firstKey = $keys[0] ?? null;\necho $firstKey; // आउटपुट: apple\n?>
\n\n

फायदे: शुरुआती लोगों के लिए भी समझना आसान, मूल ऐरे को नहीं बदलता।

\n\n

नुकसान: बड़े ऐरे के लिए, सभी की की एक कॉपी मेमोरी में बनती है। अगर ऐरे में 100,000 एलिमेंट हैं, तो यह अनावश्यक खर्च है।

\n\n

तरीका 4: current() + reset() — पॉइंटर के साथ विकल्प

\n\n

यह तरीका तरीका 2 के समान है, लेकिन वैल्यू पाने के लिए current() का उपयोग करता है, न कि की का। हालांकि, हम की भी प्राप्त कर सकते हैं:

\n\n
<?php\n$settings = [\n    'theme' => 'da                

ब्लॉग

पुस्तक अनुशंसाएँ