كيفية تغيير ترميز الأحرف من اتصال شركة تنمية نفط عمان / سكليتي في PHP؟
سؤال
وأواجه مشكلة صغيرة مع التطبيق-فب جتك التي تحافظ على التوالي في سلاسل غير UTF8، كنت قد وجدت أن المشكلة هي في اتصال قاعدة البيانات، حتى عندما يفترض أن تكون في UTF-8 في قاعدة البيانات.
وكنت قد حاولت مع "مجموعة الأحرف SET UTF8" (الخلية الطريق) و "SET أسماء UTF8" ولا شيء يحدث (ليس هناك أي معلومات عن أي من هذه الأوامر في "<لأ href =" HTTP: //www.sqlite.org/lang.html "يختلط =" noreferrer "> لغة الاستعلام يفهمها سكليتي "صفحة إما، لذلك أنا لست مندهشا من ذلك).
وPD: ربما كان الاتصال بالفعل في UTF-8 و البيانات هو لا، ولكن إذا كان هناك وسيلة لتغيير الترميز اتصال هذا السؤال سيظل مفيدا
المحلول
وبقدر ما استطيع ان اقول، سكليتي ليس لديها سوى إعداد واحد لمحارف ، التي على مستوى كل قاعدة البيانات. لا يمكنك تغيير الترميز على الاتصال.
ووAPI C ديه بطريقتين مختلفتين فتح اتصال، إما UTF- 8 أو UTF-16. أتوقع وحدة PHP في سكليتي (وهكذا PDO) لمجرد استخدام الإصدار UTF-8. إذا كان هذا هو الصحيح، وأتوقع أن اتصال سكليتي دائما UTF-8. هذا يعني أنك يجب لتشفير سلاسل / فك مع utf8_encode يدويا / utf8_decode .
وانظر أيضا: http://www.alberton.info/dbms_charset_settings_explained.html