وظيفة PHP htmlentities()
مثال
تحويل الأحرف إلى كيانات HTML:
<?php $str = "<? W3S?h????>"; echo htmlentities($str); ?>
以上代码的 HTML 输出如下(查看源代码):
<!DOCTYPE html> <html> <body> <© W3Sçh°°¦§> </body> </html>
以上代码的浏览器输出:
<? W3S?h????>
التعريف والاستخدام
تقوم وظيفة htmlentities() بتحويل الحروف إلى كود HTML.
إشارة:لتحويل كود HTML إلى حروف، استخدم وظيفة html_entity_decode() الوظيفة.
إشارة:استخدم get_html_translation_table() الوظيفة. لتقديم جدول الترجمة المستخدم من قبل وظيفة htmlentities().
القواعد النحوية
htmlentities(string,flags,character-set,double_encode)
الخيارات | الوصف |
---|---|
string | مطلوب. يعين النص الذي سيتم تحويله. |
flags |
اختياري. يعين كيفية معالجة العلامات المزدوجة والبسيطة والنقاط غير الصالحة واستخدام نوع الملف. أنواع العلامات المقبولة:
النقاط غير الصالحة:
العلامات الإضافية المحددة للنوع الملف المستخدمة:
|
character-set |
اختياري. نص يعين مجموعة الحروف التي سيتم استخدامها. 允许的值:
MacRoman - مجموعة الحروف التي تستخدمها نظام التشغيل Macالبيان: |
double_encode |
اختياري. قيمة منطقية، تحدد ما إذا كان يجب ت编码 الكيانات الموجودة بالفعل في HTML أم لا.
|
تفاصيل تقنية
النتيجة: |
سيتم إرجاع النص المحوّل. إذا string إذا كان يحتوي على ترميز غير صالح، فسيتم إرجاع نص فارغ، ما لم يتم تعيين إشارات ENT_IGNORE أو ENT_SUBSTITUTE. |
إصدار PHP: | 4+ |
سجل التحديثات: |
في PHP 5،character-set قيمة المفترضة للمتغيرات. في PHP 5.4، تم إضافة: ENT_SUBSTITUTE،ENT_DISALLOWED،ENT_HTML401،ENT_HTML5،ENT_XML1 و ENT_XHTML. في PHP 5.3، تم إضافة ENT_IGNORE. في PHP 5.2.3، تم إضافة double_encode المتغيرات. في PHP 4.1، تم إضافة character-set المتغيرات. |
مزيد من الأمثلة
مثال 1
تحويل الأحرف إلى كيانات HTML:
<?php $str = "Bill & 'Steve'"; echo htmlentities($str, ENT_COMPAT); // فقط تحويل الأقواس المزدوجة echo "<br>"; echo htmlentities($str, ENT_QUOTES); // تحويل的双引号和单引号 echo "<br>"; echo htmlentities($str, ENT_NOQUOTES); // 不转换任何引号 ?>
以上代码的 HTML 输出如下(查看源代码):
<!DOCTYPE html> <html> <body> Bill & 'Steve'<br> Bill & 'Tarzan'<br> Bill & 'Steve' </body> </html>
以上代码的浏览器输出:
Bill & 'Steve' Bill & 'Steve' Bill & 'Steve'
例子 2
通过使用西欧字符集,把一些字符转换为 HTML 实体:
<?php $str = "My name is ?yvind ?sane. I'm Norwegian."; echo htmlentities($str, ENT_QUOTES, "ISO-8859-1"); // Will only convert double quotes (not single quotes), and uses the character-set Western European ?>
以上代码的 HTML 输出如下(查看源代码):
<!DOCTYPE html> <html> <body> My name is Øyvind Åsane. I'm Norwegian. </body> </html>
以上代码的浏览器输出:
My name is ?yvind ?sane. I'm Norwegian.