Archive for the ‘Unicode’ Category
ملاحظة مهمة حول phpmyadmin , اللغة العربية , الترميز UTF-8
السلام عليكم اخواني …
اردت ان اشارككم بعض الملاحظات المهمة حول الموضوع الذي طرح كثيرا في الاونة الاخير في قسم php في منتديات سوالف سوفت والذي يتعلق ببرنامج ادارة قواعد البيانات phpmyadmin عند تصدير او استيراد قواعد بيانات تحوي اللغة العربية .
ما هي الشفرة الموحدة ‘ يونِكود’ Unicode ؟
أساسًا، تتعامل الحواسيب فقط مع الأرقام، وتقوم بتخزين الأحرف والمحارف الأخرى بعد أن تُعطي رقما معينا لكل واحد منها. وقبل اختراع “يونِكود”، كان هناك مئات الأنظمة للتشفير وتخصيص هذه الأرقام للمحارف، ولم يوجد نظام تشفير واحد يحتوي على جميع المحارف الضرورية. وعلى سبيل المثال، فإن الاتحاد الأوروبي لوحده، احتوى العديد من الشفرات المختلفة ليغطي جميع اللغات المستخدمة في الاتحاد. وحتى لو اعتبرنا لغة واحدة، كاللغة الإنجليزية، فإن جدول شفرة واحد لم يكف لاستيعاب جميع الأحرف وعلامات الترقيم والرموز الفنية والعلمية الشائعة الاستعمال.
تشفير الروابط والنصوص بواسطة الترميز UTF-8
في كثير من الاحيان يفكر البعض لماذا لا نستعمل عنوان الموضوع ليكون المعتمد عليه في عملية جلب بيانات هذا الموضوع عن طريق GET في صفحة ديناميكية معينة , وليس كما جرت العادة بالاعتماد على id هذا الموضوع وخاصة عندما يكون عنوان الموضوع باللغة العربية … ان الناظر لواقع المواقع العملاقة اليوم والمتصدرة لائحة الترتيب الاقوى في محركات البحث يلاحظ بأنها تستعمل هذه التقنية الرائعة امثال موسوعة ويكيبيديا وشركة ووردبرس وجميع المدونات المستخدمة نظامها حول العالم … وطبعا لا ننسى عملاق البحث جوجل .
Byte Order Mark – BOM
تعريف :
Byte order mark هي مجموعة رموز في بداية الملف النصي ووظيفتها اعلام المستخدم بان هذا الملف تابع لمجموعة محارف يونيكود Unicode فاما ان يكون بترميز UTF-8 او UTF-16 او UTF-32 .
هذه المجموعة من الرموز لا تكون ظاهرة بالملف واذا كنا نريد ان نعرف ترميز ملف معين فنستطيع ان تفتح الملف باي محرر HEX وننظر الى بداية ترتيب بيانات قيم HEX في المحرر والرسم التوضيحي التالي يبين ترميز الملف حسب مجموعة الرموز الاولى :
وطبعا إذا لم يكن يحوي تيار البيانات أي من هذه القيم فإن هذا الملف لا يُصنف على أنه من مجموعة الملفات المرمزة بواسطة Unicode .
