=&
PHP में असाइनमेंट ऑपरेटर (बराबर-एम्पर्सैंड) क्या करता है ?
क्या यह पदावनत है?
=&
PHP में असाइनमेंट ऑपरेटर (बराबर-एम्पर्सैंड) क्या करता है ?
क्या यह पदावनत है?
जवाबों:
यह पदावनत नहीं है और होने की संभावना नहीं है। यह मौजूदा तरीका है, उदाहरण के लिए, मौजूदा डेटा की प्रतिलिपि बनाने के बजाय, एक सरणी या ऑब्जेक्ट मिरर परिवर्तन को दूसरे को बनाया गया है।
इसे संदर्भ द्वारा असाइनमेंट कहा जाता है , जो मैनुअल को उद्धृत करने के लिए, "इसका मतलब है कि दोनों चर एक ही डेटा पर इंगित करते हैं, और कहीं भी कुछ भी कॉपी नहीं किया जाता है" ।
केवल बात यह है कि है के साथ पदावनत =&
किया गया है "का नतीजा बताए new
में संदर्भ द्वारा" PHP 5 , जो किसी भी भ्रम का स्रोत हो सकता है। new
स्वचालित रूप से संदर्भ द्वारा असाइन किया गया है, इसलिए &
निरर्थक / पदावनत है $o = &new C;
, लेकिन अंदर नहीं $o = &$c;
।
चूंकि यह खोज करना कठिन है, ध्यान दें कि =&
( एम्परसेंड के बराबर ) स्पेस एम्परसेंड के बराबर है= &
( अक्सर स्पेस एम्परसेंड के बराबर होता है ) और अक्सर ऐसा लिखा जाता है कि यह दूसरे वेरिएबल की तरह चलता है ( $x = &$y['z'];
या एम्परसेंड डॉलर साइन वेरिएबल नेम )। उदाहरण डॉक्स से सरल:$x = &$someVar
$a = 3;
$b = &$a;
$a = 4;
print "$b"; // prints 4
यहाँ PHP मैनुअल में संदर्भ द्वारा संदर्भ पर एक विस्तृत अनुभाग के लिए एक आसान लिंक है । यह पृष्ठ संदर्भों की एक श्रृंखला का हिस्सा है - पूरी श्रृंखला को पढ़ने के लिए एक मिनट का समय लगता है।
यह दो अलग-अलग ऑपरेटर हैं। =
असाइनमेंट है जैसा कि आप शायद जानते हैं। और &
इसका मतलब है कि चर को मूल्य के बजाय संदर्भ द्वारा एक्सेस किया जाना चाहिए।