क्या phpquery :: newDocument के माध्यम से इस HTML मार्कअप को चलाने के बाद अनुचित रूप से प्रदर्शित वर्णों को ठीक करने का कोई तरीका है? आधुनिक महिला के साथ क्लासिक्स के चारों ओर डबल कोट्स हैं- मूल दस्तावेज़ में जो phpquery के साथ नया दस्तावेज़ बनाने के बाद अनुचित रूप से प्रदर्शित होता है।PHP दस्तावेज़ पर गलत तरीके से प्रदर्शित एन्कोडिंग को ठीक करें php
//Original document is UTF-8 encoded
$raw_html = '<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head><body><p>Mr. Smith of Bangkok celebrated the “Classics with modern Woman”.</p></body></html>';
print($raw_html);
$aNew_document = phpQuery::newDocument($raw_html);
print($aNew_document);
मूल आउटपुट: बैंकॉक के श्री स्मिथ "आधुनिक औरत के साथ क्लासिक्स" मनाया।
नया दस्तावेज़ आउटपुट: बैंकाक के श्री स्मिथ ने आधुनिक महिला के साथ क्लासिक्स मनाया।
+1 के रूप में सहेजी नहीं गई है क्योंकि मुझे विंडोज़ पर होने पर पहले यह समस्या आई थी .... यह Windows बचत फ़ाइलों को CP1251 है (या जो भी कोड पेज)। सब कुछ हमेशा यूटीएफ -8 के रूप में सहेजा जाना चाहिए और सामग्री यूटीएफ -8 का उपयोग करके भी भेजी जानी चाहिए। लिनक्स में यह समस्या नहीं है :) –
@ यैनिक, यहां वही। – shamittomar
जोड़ने का प्रयास किया गया हैडर ("सामग्री-प्रकार: टेक्स्ट/एचटीएमएल; वर्णसेट = यूटीएफ -8"); - स्क्रिप्ट के शीर्ष पर, लेकिन यह ठीक नहीं हुआ। क्या आप इस उदाहरण में सहेजे जा रहे पृष्ठ द्वारा अपना क्या मतलब बता सकते हैं? मुझे नहीं लगता कि पृष्ठ कभी भी सहेजा गया है, लेकिन phpquery :: newdocument() द्वारा पुन: निर्मित होने से पहले लिनक्स सर्वर पर स्मृति में मौजूद है। यदि संभव हो तो आप दिखा सकते हैं कि इस कोड को सही तरीके से कैसे सम्मिलित किया जाए? या सही एन्कोडिंग के साथ दस्तावेज़ को कैसे सहेजना है? मैं कुछ गलत कर रहा हूँ। धन्यवाद – JMC