मैंने कहीं पढ़ा है, और मुझे याद नहीं है कि कहाँ, echoतब डेटा को आउटपुट करने का एक अधिक कुशल तरीका है print।
द्रुपाल कोर printइतना उपयोग क्यों करता है? क्या इसके पीछे कोई विशेष कारण है?
मैंने कहीं पढ़ा है, और मुझे याद नहीं है कि कहाँ, echoतब डेटा को आउटपुट करने का एक अधिक कुशल तरीका है print।
द्रुपाल कोर printइतना उपयोग क्यों करता है? क्या इसके पीछे कोई विशेष कारण है?
जवाबों:
echoकेवल शैक्षणिक वातावरण में तेज है। अंतर बहुत सीमांत है। एक त्वरित बेंचमार्क जो मैंने अभी किया है: 2000 से अधिक नोड्स वाली तालिका से एक पंक्ति प्राप्त करने का समय 1 यूनिट है।
1 यूनिट का सुधार पाने के लिए, मुझे लगभग 3.700.000 (3 से अधिक मीलियन) printस्टेटमेंट के साथ प्रतिस्थापित करने की आवश्यकता होगी echo। दूसरे शब्दों में, यदि आप प्रदर्शन में सुधार चाहते हैं, तो यह शायद ही शुरू करने की जगह है।
देखा जाता है कि printमामलों की एक बहुत व्यापक रेंज में इस्तेमाल किया जा सकता है echo, तो पहले कुछ फायदे हैं। यह आपको तीन विकल्प छोड़ता है:
printechoजहां संभव हो और जहां भी हो, उसका उपयोग करेंprintechoयदि echoउपयोग नहीं किया जा सकता है, तो हमेशा अपने कोड का उपयोग करें और अपने कोड को रीफैक्टर करेंड्रुपल पहले डिफॉल्ट कर चुका है।
अपने वास्तविक प्रश्न का उत्तर देने के लिए कि यह क्यों चुना गया था: यह नहीं था। यह बस इस तरह से बढ़ी।
if (! print some_method() ) {print some_other_method()}। अगर प्रिंट वास्तव में कुछ छपता है तो TRUE लौटाता है। इको कुछ नहीं देता है, यही कारण है कि यह तेजी से भी है। एक और उदाहरण जो आप देखेंगे return print $somevalueवह स्थिति वापस करने के लिए एक विधि के अंत में है।