2011-01-14 11 views
8

मैं PHP सीखना शुरू कर रहा हूं। मैं PHP 5.3 का उपयोग करना चाहता हूं क्योंकि यह अब तक का नवीनतम संस्करण है। मैं एक प्रोजेक्ट पर काम कर रहा हूं जिसमें मैं PHP 5.2 स्क्रिप्ट का उपयोग करूंगा जिसे किसी ने मुझे दिया था।PHP 5.3 पीछे है-PHP 5.2 के साथ संगत है?

क्या वे PHP 5.3 का उपयोग कर रहे हैं, भले ही वे ठीक चलने जा रहे हैं?

+8

http://www.php.net/manual/en/migration53.php सभी यो को जानना चाहिए। –

उत्तर

10

PHP.net PHP 5.2.x से PHP 5.3 तक अपग्रेड करने के लिए guide प्रदान करता है। इसमें backwards compatibility पर एक अनुभाग शामिल है।

मेरे अनुभव से, 5.2 से 5.3 तक संक्रमण बहुत आसानी से सुचारू रूप से चला गया। मेरे ऐप के साथ मेरी एकमात्र समस्या यह थी कि मेरी डेटटाइम सेटिंग मेरे php.ini में कॉन्फ़िगर की गई संपत्ति सुनिश्चित करे, और कुछ अति-आक्रामक बहिष्करण चेतावनियों को फ़िल्टर करना शुरू कर दिया गया जो दिखाए गए थे।

+1

+1। मेरे लिए भी वास्तव में चिकनी संक्रमण। एक मुद्दा जो मैंने भाग लिया था, यहां वर्णित है: http://stackoverflow.com/questions/4673472/php-5-3-and-assigning-the-return-value-of-new-by-reference – mfonda

2

अधिकांश भाग के लिए, मामूली संस्करण रिलीज आपको समस्याएं नहीं पहुंचाएंगे। आपको ठीक होना चाहिए

जाहिर है, अगर आपको कोई समस्या है, तो आप यह सुनिश्चित करना चाहते हैं कि आपके पास error_reporting सभी त्रुटियों को देखने के लिए सेट है। PHP: error_reporting

इसके अलावा, 5.3 में परिवर्तन के लिए मैनुअल की जाँच 5.2 से: Migrating from PHP 5.2.x to PHP 5.3.x

5

नहीं है, 5.3 पिछड़े संगत नहीं है, और सभी तरह से यह एक लघु संस्करण उन्नयन के रूप में नहीं देखा जाना चाहिए। असंगत परिवर्तनों के लिए समर्पित एक पृष्ठ है: http://www.php.net/manual/en/migration53.incompatible.php उन कार्यों पर भी विचार करें जिन्हें आपने डिज़ाइन किया है लेकिन 5.3 में स्वीकार कर लिया गया है। चूंकि php फ़ंक्शन ओवरलोडिंग या ओवरराइटिंग का समर्थन नहीं करता है, इसलिए यह एक त्रुटि देगा।

+0

"आपके पास फ़ंक्शंस पर विचार करें डिजाइन किया गया है लेकिन 5.3 "वाह में स्वीकार किया गया है, यह इंगित करने के लिए एक दुर्लभ/यादृच्छिक बात है: डी लेकिन क्यों -1? – Hannes

+1

क्यों मैंने इसे इंगित किया: मैंने इसे एक से अधिक अवसरों पर चलाया है जिसमें पुराने एप्लिकेशन को 5.3 के साथ चलाने की कोशिश की जा रही है। हमने कार्यों को परिभाषित किया था कि अब जहां php-lib फ़ंक्शन (मुझे लगता है कि 'date_add' उनमें से था), और यह वास्तव में टूट जाता है। और एक वैश्विक खोज-और-प्रतिस्थापन निश्चित रूप से एक मामूली संस्करण अद्यतन से अपेक्षा की अपेक्षा अधिक प्रयास करता है। क्यों -1 के लिए, मैं भी उत्सुक हूँ। – Inca

2

कुछ मामूली समस्याएं हैं। संदर्भ द्वारा कॉल समय पास बहिष्कृत कर रहे हैं। नए आरक्षित शब्द हैं (यानी गोटो)।

0

PHP के सभी संस्करणों में पिछड़ी संगतता नहीं है। जब यह संस्करण बदल गया तो यह अक्सर कुछ कार्यों को हटा देता है। समस्या तब होती है जब आपको सर्वर को अपग्रेड करना होता है और PHP संस्करण को बदलने की आवश्यकता होती है लेकिन कुछ PHP स्क्रिप्ट अब नए PHP संस्करण के साथ काम नहीं करते हैं। आपको PHP स्क्रिप्ट को भी सही करना होगा जो एक बड़ा काम है। लेकिन यदि स्क्रिप्ट आपके बजाए अन्य उपयोगकर्ताओं से संबंधित है, तो आप उन स्क्रिप्ट को अपग्रेड नहीं कर सकते हैं। यह एक वास्तविक सिरदर्द की स्थिति है कि मैं php से तंग आ गया हूं और पिछड़े संगतता कारण के बजाय पर्ल पर स्विच कर रहा हूं।

संबंधित मुद्दे