عند محاولة استرداد الأحرف المميزة من قاعدة بيانات باستخدام تشفير latin1_swedish_ci وترميزها في JSON باستخدام json_encode()، قد تكون النتيجة غير متوقعة. يتم تحويل النتيجة المقصودة، مثل "Abord â Plouffe،" إلى "فارغة"، مما يجعل JSON المشفر غير صالح.
لحل هذه المشكلة، من الضروري تشفير القيم المستردة إلى UTF-8 بشكل صريح قبل تطبيق json_encode (). وهذا يضمن أن مخرجات JSON تحتوي على أحرف UTF-8 الصحيحة ويتم التحقق من صحتها وفقًا لذلك. فيما يلي كيفية تنفيذ هذا الحل:
// Initialize an empty array for the encoded result set
$rows = array();
// Iterate over the PHPMyAdmin result set
while ($row = mysql_fetch_assoc($result)) {
// Apply UTF-8 encoding to each row value
$rows[] = array_map('utf8_encode', $row);
}
// Output the encoded $rows
echo json_encode($rows);
في هذا الكود المعدل، نستخدم وظيفة array_map لتطبيق utf8_encode على كل عنصر في كل صف في مجموعة النتائج. يضمن ذلك ترميز جميع الأحرف بشكل صحيح في UTF-8 قبل تنفيذ json_encode. وبالتالي، فإن مخرجات JSON الناتجة ستعكس الأحرف المقصودة بدقة، مع الحفاظ على الأحرف المميزة حسب الرغبة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3