arrays - PHP syntax for dereferencing function result -
पृष्ठभूमि
हर दूसरे प्रोग्रामिंग भाषा में मैं नियमित आधार पर उपयोग करता हूं , फ़ंक्शन के परिणाम को पकड़ने के लिए एक नया चर घोषित किए बिना किसी फ़ंक्शन के रिटर्न मान पर काम करना सरल होता है।
PHP में, हालांकि, यह इतना आसान नहीं दिखता है:
< H3> example1 (फ़ंक्शन का परिणाम एक सरणी है) & lt;? Php फ़ंक्शन फ़ूबार () {वापस preg_split ('/ \ s + /', 'शून्य एक दो तीन चार पांच'); } // क्या php "शून्य" कह सकता है? /// प्रिंट (फोबोर () [0]); /// & lt; - नहीं /// प्रिंट (& amp; foobar () [0]); /// & lt; - नहीं /// प्रिंट (& amp; foobar () - & gt; [0]); /// & lt; - नहीं /// प्रिंट ("$ {foobar ()} [0]"); /// & lt; - नहीं? & Gt;
example2 (फ़ंक्शन परिणाम एक ऑब्जेक्ट है)
& lt;? Php फ़ंक्शन zoobar () {// नोट: कास्टिंग (वस्तु) सरणी () है PHP में अन्य समस्याएं / देखें, जैसे http://stackoverflow.com/questions/1869812 $ vout = (वस्तु) सरणी ('0' = & gt; 'शून्य', 'fname' = & gt; 'होमर', 'lname '= & gt;' सिम्पसन ',); वापसी $ vout; } // क्या php "शून्य" कह सकता है? // प्रिंट ज़ोओबार () - & gt; 0; // & lt; - नहीं (पार्स त्रुटि) // प्रिंट ज़ोबर () - & gt; {0}; // & lt; - nope // print zoobar () - & gt; {'0'}; // & lt; - नहीं / $ vtemp = zoobar (); // एक चर मदद का उपयोग करता है? // प्रिंट $ vtemp- & gt; {0}; // & lt; - notope
क्या कोई यह सुझाव दे सकता है कि यह कैसे PHP में है?
यह विशेष रूप से सरणी परिभाषित है, जो वर्तमान में php5.3 में असमर्थित है लेकिन अगले रिलीज में संभव होना चाहिए, 5.4। ऑब्जेक्ट डिफेंफरिंग चालू पीएचपी रिलीज में संभवतः दूसरी तरफ है। मैं भी इस कार्यक्षमता के लिए उत्सुक हूं!
Comments
Post a Comment