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

डेटाबेस फ़ील्ड में व्हाइटस्पेस ट्रिम द्वारा नहीं हटाया जाता है ()

function UberTrim($s) {
    $s = preg_replace('/\xA0/u', ' ', $s);  // strips UTF-8 NBSP: "\xC2\xA0"
    $s = trim($s);
    return $s;
}

बिना ब्रेक वाले स्थान के लिए UTF-8 वर्ण एन्कोडिंग, यूनिकोड (U+00A0), 2-बाइट अनुक्रम सी2 ए0 . मैंने दूसरे पैरामीटर का उपयोग trim() लेकिन यह चाल नहीं चली। उदाहरण उपयोग:

assert("abc" === UberTrim("  \r\n  \xc2\xa0  abc  \t \xc2\xa0   "));

TRIM(text_field) . के लिए एक MySQL प्रतिस्थापन यह यूटीएफ नो-ब्रेक रिक्त स्थान को भी हटा देता है, @ रुडोल्फरेन की टिप्पणी के लिए धन्यवाद:

TRIM(REPLACE(text_field, '\xc2\xa0', ' '))

UTF-8 चेकलिस्ट:

(अधिक जांच यहां )

  1. सुनिश्चित करें कि आपका PHP स्रोत कोड संपादक में है UTF-8 मोड बिना BOM . या वरीयताओं में सेट करें ।

  2. सुनिश्चित करें कि आपका MySQL क्लाइंट UTF-8 वर्ण एन्कोडिंग के लिए सेट है (अधिक यहां और यहां ), उदा.

    $pdo =new PDO('mysql:host=...;dbname=...;charset=utf8',$userid,$password); $pdo->exec("SET CHARACTER SET utf8");

  3. सुनिश्चित करें कि आपका HTTP सर्वर UTF-8 के लिए सेट है, उदा। अपाचे के लिए :

    AddDefaultCharset UTF-8

  4. सुनिश्चित करें कि ब्राउज़र UTF-8 की अपेक्षा करता है।

    हैडर ('सामग्री-प्रकार:टेक्स्ट/एचटीएमएल; चारसेट =utf-8');

    या



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. तैयार विवरण पर स्विच करना

  2. MySQL CONCAT(string,longtext) परिणाम हेक्स स्ट्रिंग में होता है

  3. MySQL पर स्टोरेज इंजन टाइप कैसे बदलें?

  4. MySQL GUID/UUIDs को संग्रहित करना

  5. MySQL को LIKE और REGEXP में बहु-बाइट वर्णों के बारे में कैसे जागरूक करें?