Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

लैटिन-1 / UTF-8 एन्कोडिंग php

आपका एचटीएमएल आउटपुट एक ही एन्कोडिंग में होना चाहिए, उसके आसपास कोई रास्ता नहीं है। इसका मतलब है कि विभिन्न एन्कोडिंग में सामग्री को पहले आपके HTML एन्कोडिंग में परिवर्तित करने की आवश्यकता है। जबकि iconv . के साथ ऐसा करना संभव है या mb_convert_encoding , आपको दो समस्याओं का समाधान करना है:

  1. आपको सामग्री की वर्तमान एन्कोडिंग जानने (या अनुमान लगाने) की आवश्यकता है
  2. आपको इसे हर जगह मैन्युअल रूप से करने की ज़रूरत है

उदाहरण के लिए, एक सैद्धांतिक समाधान यह होगा कि यूटीएफ -8 को अपने एचटीएमएल एन्कोडिंग के रूप में चुनें और फिर इसे उन सभी स्ट्रिंग्स के लिए करें जिन्हें आप आउटपुट करने जा रहे हैं:

$string = '...'; // from the database

// If it's not already UTF-8, convert to it
if (mb_detect_encoding($string, 'utf-8', true) === false) {
    $string = mb_convert_encoding($string, 'utf-8', 'iso-8859-1');
}

echo $string;

उपरोक्त कोड मानता है कि गैर-यूटीएफ -8 सामग्री लैटिन -1 में एन्कोड की गई है, जो आपके प्रश्न के अनुसार उचित है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql.sock नहीं खोजा जा सका

  2. आवारा - mysql से दूरस्थ कनेक्शन - योनि ssh कनेक्शन के बाहर

  3. मैं एसएसएच का उपयोग कर MySQL डेटाबेस कैसे निर्यात कर सकता हूं?

  4. php-mysql परिणाम पंक्तियों में डुप्लिकेटिंग फ़ील्ड हटाएं

  5. VARCHAR बनाम टेक्स्ट प्रदर्शन जब डेटा पंक्ति पर फिट बैठता है