2012-12-04 32 views
6

मैं विश्वास नहीं कर सकता मैं इस सवाल के लिए प्रासंगिक कुछ भी गूगल के लिए सक्षम नहीं हूँ, लेकिन वैसे भी ...क्या सख्त मानकों के साथ PHP निष्पादन तेजी से है?

मेरे तार्किक धारणा हो सकता है कि स्क्रिप्ट जो सभी नियमों कि सख्त मानकों हुक्म तेजी से अमल होगा पालन करना।

दूसरी ओर, स्क्रिप्ट, सख्त मानकों के बिना काम करता है, तो तो शायद सख्त मानकों सिर्फ संकलन की प्रक्रिया में एक अनावश्यक अतिरिक्त सत्यापन चरण है ...

वहाँ क्या तेज है पर कोई आधिकारिक जानकारी है? धन्यवाद।

+1

आपकी धारणा सख्त कोड के रूप में सही है ("सख्त" की कुछ परिभाषा के लिए) * * को तेजी से निष्पादित किया जा सकता है - उदाहरण देखें [HipHop] (https://en.wikipedia.org/wiki/HipHop_for_PHP)। लेकिन मुझे लगता है कि यह आधिकारिक PHP दुभाषिया में नहीं किया जाता है। हालांकि फेसबुक एक वीएम पर काम कर रहा है जो वास्तव में करता है। –

+2

माइक्रो अनुकूलन सभी बुराई की जड़ है। हालांकि, सख्त मानकों से आपको पता चलता है कि आपको लंबे समय तक कम समस्याएं मिलेंगी। @ कोनराड रुडॉल्फ मुझे लगता है कि वह PHP के बारे में बात कर रहा है 'E_STRICT'-नोटिस – KingCrunch

+2

@ किंग अनुचित उद्धरण सभी बुराई की जड़ हैं। ओपी अनावश्यक माइक्रो-ऑप्टिमाइज़ेशन के बारे में बात नहीं कर रहा है। –

उत्तर

6

यह तेजी से होना चाहिए ..

सरल कारण किया जा रहा है कि PHP की त्रुटि को ट्रिगर प्रणाली बहुत भारी है, और यहां तक ​​कि अगर E_STRICT त्रुटियों को दबा दिया जाता है, वे अभी भी त्रुटि तंत्र में प्रवेश (केवल नजरअंदाज किया जा करने के लिए)।

लेकिन वास्तव में यह स्थिति पर निर्भर करता है, क्योंकि मैं कल्पना कर सकता हूं कि E_STRICT के आसपास काम करना भी मूल समाधान से भी भारी हो सकता है।

भले ही, E_STRICT का उपयोग करना एक स्मार्ट विचार है और अधिक पोर्टेबल, भविष्य-सबूत कोड के लिए अनुमति देता है। हालांकि, मैं सख्त PHP कोड लिखना शुरू करने के वैध कारण के रूप में प्रदर्शन का उपयोग नहीं करता।

+0

+1 बिल्कुल सही, उत्पन्न होने वाली प्रत्येक त्रुटि (भले ही आपके पास 'error_reporting (0) 'है) प्रदर्शन पर नकारात्मक प्रभाव पड़ता है, क्योंकि रिपोर्ट किए जाने पर भी वे उत्पन्न होते हैं। यह बदले में कार्यक्रम द्वारा अतिरिक्त निष्पादन कदम उठाए जाने का कारण बनता है। – Leigh