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

पीडीओ यूटीएफ -8 एन्कोडिंग मुद्दा?

यह:

$db->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, 'SET NAMES utf8');

पूरी तरह से व्यर्थ है। देखें http://php.net/manual/en/ref.pdo- mysql.php . MYSQL_ATTR_INIT_COMMAND कनेक्शन स्थापित होने के ठीक बाद निष्पादित किया जाता है, बाद में नहीं। यदि आप इसे पहले से पूरी तरह से बनाए गए पीडीओ ऑब्जेक्ट पर सेट करते हैं, तो बहुत देर हो चुकी है और यह कभी भी निष्पादित नहीं होता है। आपको इसे कंस्ट्रक्टर को पास करना होगा:

new PDO(..., ..., ..., array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'))

वैकल्पिक रूप से, यदि आपका PHP संस्करण इसका समर्थन करता है, तो charset=utf8 . जोड़ें डीएसएन को।




  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 - डालने के बाद उसी तालिका को अद्यतन करने के लिए ट्रिगर

  2. MySQL और PDO:क्या PDO::lastInsertId सैद्धांतिक रूप से विफल हो सकता है?

  3. डेटाबेस टेबल और कॉलम के लिए अभी भी सांप के मामले का उपयोग करने का कोई कारण?

  4. WEEKOFYEAR () उदाहरण – MySQL

  5. डिस्टिंक्ट बनाम ग्रुप बाय