الدالة get_html_translation_table()‎ في PHP

من موسوعة حسوب
< PHP

(PHP 4, PHP 5, PHP 7)

تُعيد الدالة get_html_translation_table()‎ جدول التحويل المستخدم بواسطة الدالتين htmlspecialchars()‎ و htmlentities()‎.

الوصف

array get_html_translation_table ([ int $table = HTML_SPECIALCHARS [, int $flags ENT_COMPAT | ENT_HTML401 [, string $encoding = "UTF-8" ]]] )

تُعيد الدالة get_html_translation_table()‎ جدول التحويل المستخدم داخليًا للدالتين  htmlspecialchars()‎ و htmlentities()‎.

ملاحظة: تُرَّمز المحارف الخاصة بطرائق متعددة. مثل يُمكن ترميز الحرف " إلى ‎ &quot;‎أو ‎&#x22. تعيد الدالة get_html_translation_table()‎ الرموز المستعملة بواسطة الدالتين htmlspecialchars()‎ و htmlentities()‎ فقط.

المعاملات

table

نوع الجدول المُعاد إما HTML_ENTITIES أو  HTML_SPECIALCHARS.

flags

قناع bitmask يتكون من واحدة أو أكثر من الرايات المبينة في الجدول التالي. تُحدد هذه الرايات نوع الاقتباسات بالجدول مع نوع المستند الموجه له الجدول. قيمة القناع الإفتراضي هي ENT_COMPAT | ENT_HTML401.

ثوابت الرايات المُتاحة

الثابت الوصف
ENT_COMPAT يحتوي الجدول مدخلات لعلامات الاقتباس المزدوجة دون علامات الاقتباس المفردة
ENT_QUOTES يحتوي الجدول مدخلات لعلامات الاقتباس المزدوجة وعلامات الاقتباس المفردة
ENT_NOQUOTES لا يحتوي الجدول على علامات إقتباس، مزدوجةً كانت أو مفردة.
ENT_HTML401 جدول لمعيار HTML 4.01.
ENT_XML1 جدول لمعيار XML1.
ENT_XHTML جدول لمعيار XHTML.
ENT_HTML5 جدول لمعيار HTML5.

encoding

يحوي الترميز المستعمل. في حالة عدم ضبط قيمة لهذا الوسيط فستَستَعمِل النُسَخ قبل PHP 5.4.0 الترميز ISO-8859-1 أما النسخة PHP 5.4.0 وما بعدها فتستعمل الترميز UTF-8. تُدعَم أصناف المحارف التالية:

ترميزات المحارف المدعومة

ترميز المحارف التسمية الوصف
ISO8859-1 ISO8859-1 دول أوروبا الغربية، Latin-1.
ISO8859-5 ISO8859-5 المحارف السيريلية قليلة الاستخدام (اللاتينية أو السيريلية).
ISO8859-15 ISO8859-15 أوروبا الغربية، Latin-9.

أُضيفت علامة اليورو، والحروف الفرنسية والفنلندية غير الموجودة في ترميز Latin-1 (أي ISO-8859-1).

UTF-8 ترميز ASCII المتوافق مع يونيكود (multi-byte 8-bit Unicode).
cp866 ibm866, 866 المحارف السيريلية الخاصة بنظام التشغيل دوس (DOS).
cp1251 Windows-1251, win-1251, 1251 المحارف السيريلية الخاصة بـنظام التشغيل ويندوز.
cp1252 Windows-1252, 1252 المحارف الخاصة بـنظام التشغيل ويندوز لدول أوروبا الغربية.
KOI8-R koi8-ru, koi8r الروسية.
BIG5 950 الصينية التقليدية، تستخدم أساسا في تايوان.
GB2312 936 الصينية المبسطة، مجموعة المحارف الوطنية القياسية.
BIG5-HKSCS مجموعة محارف Big5 مع إضافات هونغ كونغ، الصينية التقليدية.
SHIFT_JIS SJIS، SJIS-win، cp932، 932 اليابانية
EUC-JP ‎EUCJP, eucJP-win اليابانية
MacRoman مجموعة المحارف التي يستخدمها نظام التشغيل Mac OS.
'''' سلسلة نصية فارغة تُشَغِل الكشف عن الترميز من ترميز المحارف المستعمل في ملف السكربت (وذلك عبر Zend multibyte)، أو من قيمة ‎،default_charset أو المحلية الحالية (راجع nl_langinfo()‎ و setlocale()‎) بهذا الترتيب، لا يُنصح باستخدام هذه القيمة.

ملاحظة: لا تُعرَف أي ترميزات محارف أخرى من غير المذكورة أعلاه، يُستخدم الترميز الافتراضي في هذه الحالة مع إرسال تحذير.

سجل التغييرات

الإصدار الوصف
5.4.0 أصبحت قيمة المعامل encoding الافتراضية هي UTF-8.
5.4.0 اُضيفت الثوابت ENT_HTML401 و ENT_XML1 و ENT_XHTML و ENT_HTML5.
5.4.3 أُضيف المعامل encoding للدالة get_html_translation_table()‎.

أمثلة

المثال 1: مثال عن جدول التحويل

<?php
var_dump(get_html_translation_table(HTML_ENTITIES, ENT_QUOTES | ENT_HTML5));
?>

يُظهِر المثال السابق ما يلي :  

array(1510) {
  ["
"]=>
  string(9) "&NewLine;"
  ["!"]=>
  string(6) "&excl;"
  ["""]=>
  string(6) "&quot;"
  ["#"]=>
  string(5) "&num;"
  ["$"]=>
  string(8) "&dollar;"
  ["%"]=>
  string(8) "&percnt;"
  ["&"]=>
  string(5) "&amp;"
  ["'"]=>
  string(6) "&apos;"
  // ...
}

انظر أيضًا

مصادر