दिलचस्प पोस्ट
निर्धारित करें कि क्या कोई तत्व jQuery के साथ एक सीएसएस वर्ग है पायथन में आवधिक कार्रवाइयां निष्पादित करना वही जूनिट परीक्षण चलाने का आसान तरीका? क्या कनेक्शन के कारण त्रुटियों से इनकार कर सकते हैं? SQLite में AUTOINCREMENT के लिए प्रारंभ मूल्य सेट करें क्या eval () और नया फ़ंक्शन () एक ही बात है? क्या आप सी में वस्तु-उन्मुख कोड लिख सकते हैं? एंड्रॉइड एमुलेटर में एपीके फ़ाइल कैसे स्थापित करें? प्रत्यक्ष बनाम नियुक्त – jQuery .on () मैं एक ऐसे विशिष्ट गुण को कैसे लागू कर सकता हूं जो मेरे पास नहीं है, जिसके लिए मैं खुद नहीं हूं? जावास्क्रिप्ट में iframe तत्वों का उपयोग करें मैं वेबपेज में जावास्क्रिप्ट कोड कैसे छिपा सकता हूं? कैसे ऑब्जेक्ट के लिए कैमरा फ़िट करने के लिए $ की डिफरेड की एक सरणी में पास करें। जब () बहुत सी सी # सीएसवी रीडर

PHP 5.4 के रूप में "गूंज" कम टैग स्थायी रूप से सक्षम क्यों हैं?

यहां तक ​​कि आधिकारिक दस्तावेज हमें यह बताते थे कि PHP "लघु टैग" ( <? /*...*/ ?> ) "खराब" हैं हालांकि, PHP 5.4 के बाद से, echo विविधता <?= /*...*/ ?> को short_open_tag सेटिंग की परवाह किए बिना स्थायी रूप से सक्षम किया गया है ।

क्या बदल गया है?

यहां तक ​​कि अगर वे पहले से अप्रत्याशित प्रकृति की वजह से पूरी तरह निराश हो गए हों कि क्या साझा किए गए होस्टिंग प्लेटफ़ॉर्म पर short_open_tag सक्षम है, तो निश्चित रूप से यह तर्क दूर नहीं जाता क्योंकि मेजबान के कुछ सबसेट PHP 5.4 चलेंगे?

बेशक भाषा में यह बदलाव स्वाभाविक रूप से सिफारिश में बदलाव को इंगित नहीं करता है कि हमें "कम टैग" से बचने चाहिए, लेकिन अगर वे परेशान हो गए तो निश्चित रूप से PHP देवों की तरह ऐसा लगता होगा कि वे उन्हें "नफरत" न करें बहुत। सही?

इस समय मैं केवल तार्किक निष्कर्ष निकालना चाहता हूं कि PHP 5.4 में इस परिवर्तन को लागू करने के लिए कुछ उद्देश्य तर्क होना चाहिए।

यह क्या है?

वेब के समाधान से एकत्रित समाधान "PHP 5.4 के रूप में "गूंज" कम टैग स्थायी रूप से सक्षम क्यों हैं?"

छोटे खुले टैग हमेशा PHP 5.4 के बाद से सक्षम नहीं होते हैं। दस्तावेज़ संक्षिप्त इको टैग्स के बारे में बात करता है जो एक अलग बात है (छोटे खुले टैग <? शैली टैग हैं, छोटे गूंज टैग <?= ईको-आईएनजी के लिए शैली टैग हैं)।

तो फिर वे डिफ़ॉल्ट रूप से अब क्यों सक्षम हैं? ठीक है, वहाँ बहुत सारी स्क्रिप्ट हैं, जहां <?= $somevar ?> <?php echo $somevar ?> <?= $somevar ?> <?php echo $somevar ?> का उपयोग करने के लिए लाभ मिलता है <?php echo $somevar ?> और क्योंकि छोटे गूंज टैग छोटे खुले टैग के रूप में खराब नहीं होते हैं, इसलिए वे हमेशा छोटे इको टैग को सक्षम करने के लिए चुना करते थे । क्योंकि अब डेवलपर्स (चौखटे और सीएमएस -एस के) उन पर भरोसा कर सकते हैं (या बल्कि, जब PHP 5.4 मुख्य धारा बन जाता है)

हालांकि, छोटे खुले टैग अभी भी आपके php.ini में short_open_tag सेटिंग से प्रभावित हैं।

केवल कम गूंज टैग ( <?= ) स्थायी रूप से सक्षम है, छोटे खुले टैग नहीं ( <? ) इसका कारण यह है कि जब आप HTML टेम्पलेट्स (या कोई अन्य दृश्य टेम्प्लेट) बनाते हैं तो कम इको टैग वास्तव में आसान होता है और इसके बिना आपको बहुत कुछ लिखना पड़ता है (जैसे <?php echo $var; ?> बजाय <?= $var ?> )

नोट: PHP 5.4 से आरंभ, लघु इको टैग <?= हमेशा short_open_tag सेटिंग की परवाह किए बिना, मान्यता प्राप्त और मान्य है।

यह सब क्या कह रहा है, कि <?= हमेशा मान्य है, और नहीं <?

इसका कारण यह है कि < ? XML दस्तावेज़ों में उपयोग किया जाता है और short_open_tags को सक्षम करने से XML कोड में त्रुटियां उत्पन्न होंगी। लेकिन, < ?= , बस < ?php XML ओपन टैग नहीं है और उपयोग करने के लिए सुरक्षित है