पुराने पीएचपी 6 काम को रोकने के प्राथमिक कारणों में से एक यह आंतरिक जटिलता के कारण था और इसे लाने के लिए काम की मात्रा थी, जो किसी को भी पूरी तरह से अनसुना कर देती थी।
थोड़ा सा इतिहास: PHP 6 के यूनिकोड की नकल को एक बड़े PHP उपयोगकर्ता की आवश्यकता द्वारा डिजाइन किया गया था और उसने यूनिकोड को "सही" करने की कोशिश की। कुछ मूल्यांकन के बाद पीएचपी-टू-यूनिकोड-सपोर्ट के प्राथमिक डिजाइनर ने एक नए स्ट्रिंग प्रकार को जोड़ने के लिए चुना है जो आंतरिक रूप से यूटीएफ -16 है और विभिन्न स्थानों में अलग-अलग एनडिंग का उपयोग करने की अनुमति देता है। तो कोड को एक एन्कोडिंग में लिखा जा सकता है, आउटपुट एक अलग एन्कोडिंग और "रनटम ऑपरेशन" कुछ अन्य एन्कोडिंग का उपयोग कर सकता है। UTF-16 को चुनने का कारण यह था कि यह कार्य ICU के आधार पर होना चाहिए जो UTF-16 का उपयोग करता है और यह पाया गया कि यह एन्कोडिंग utf- और utf-16 के बीच बातचीत करते समय तेजी से सामान्य स्ट्रिंग संचालन करता है। । अब तक सब ठीक है।
अब ऐसा करने का परिणाम नए स्ट्रिंग प्रकार की शुरूआत में सबसे आगे है। तब तक PHP के आंतरिक प्रकार की प्रणाली में कुछ प्रकार (NULL, bool, int / long, float / double, string, array, resource, object) थे और बहुत सारे कोड इस पर कुछ मान्यताओं थे। ऐसी धारणाओं के अलावा, स्ट्रिंग्स पर काम करने वाले सभी कार्य हैं, और उनमें से बहुत सारे हैं, व्यक्तिगत रूप से मूल्यांकन किया जाना है और यह तय करना है कि एन्कोडिंग को कैसे संभालना है। क्या उन्हें बाइनरी स्ट्रिंग्स या यूनिकोड स्ट्रिंग्स पर काम करना चाहिए? यदि एक रूपांतरण की आवश्यकता होती है जो एन्कोडिंग आदि का उपयोग किया जाना चाहिए और यह बहुत काम है और कुछ मामलों में सही करने के लिए काफी जटिल है। इसके अतिरिक्त आंतरिक API काफी जटिल हो गए, क्योंकि PHP में अधिकांश प्रमुख API को बाइनरी स्ट्रिंग्स (पुराना वाला) के लिए संस्करण मिलते थे और फिर अक्सर "रनटाइम एन्कोडेड" स्ट्रिंग्स के लिए एक संस्करण,
ऐसा करने की प्रक्रिया पर कि कई डेवलपर्स कॉपीप्लेक्सिटी पर ठोकर खाए, utf-16 से नाराज हो गए और इस तथ्य को पसंद नहीं किया कि यह डबल मेमोरी उपयोग से अधिक होगा और अधिकांश मौजूदा अनुप्रयोगों को तोड़ते समय बहुत सारे स्ट्रिंग को परिवर्तित करने में खर्च करेगा। इसलिए, स्वयंसेवकों द्वारा संचालित किए जा रहे PHP, कम और कम डेवलपर्स इस पर काम कर रहे थे और अन्य चीजें ढेर हो गईं और योगदानकर्ता नाखुश हो गए और अंत में इसे छोड़ देना पड़ा।
अब भविष्य क्या ला सकता है? - धीमी गति से विकास हो रहा है कि PHP ae में अधिक से अधिक चीजें utf-8 के आसपास बनाई गई हैं। एक कस्टम प्रकार के साथ एक मजबूत तरीके से नहीं और सब कुछ मजबूर करने के लिए और वर्तमान में इस गर्म लोहे को छूने के लिए विकसित करने के लिए प्रेरित नहीं हैं। कोई यह आशा कर सकता है कि किसी के पास इसे अच्छी तरह से काम करने का एक अच्छा प्रस्ताव है, लेकिन वर्तमान में "हर कोई" भाग जाएगा यदि वे केवल शब्द सुनते हैं। :)