कुछ शोध करने के बाद, मैं अंत में एक प्रश्न के उत्तर में आया, जिसे मैं जल्द ही यहां पूछने के लिए आया था; आप PHP में __get
और __set
जादू विधियों के माध्यम से सरणी के साथ कैसे काम करते हैं? जब भी मैं $object->foo['bar'] = 42;
जैसे किसी चीज़ का उपयोग करके मूल्य निर्धारित करने का प्रयास कर रहा था, तो यह चुपचाप इसे छोड़ देता था।सरणी के साथ __set का उपयोग हल, लेकिन क्यों?
वैसे भी, उत्तर सरल है; __get
विधि को संदर्भ द्वारा वापस लौटने की आवश्यकता है। और इसके सामने एक एम्पर्सेंड फेंकने के बाद, यह सुनिश्चित करता है कि यह काम करता है।
मेरा प्रश्न वास्तव में, क्यों है? मुझे समझ में नहीं आ रहा है कि यह क्यों काम कर रहा है। __get
संदर्भ द्वारा लौटने से __set
बहुआयामी सरणी के साथ काम करता है?
संपादित करें: जिस तरह से चल रहा है, पीएचपी 5.3.1
यह पीएचपी 5.2.x बनाने में लगता है __get एक संदर्भ लौटने में मदद नहीं करता है। – Vlad