PHP html_entity_decode() فنکشن

مثال

HTML entity به کاراکتر تبدیل می‌شود:

<?php
$str = "<© W3Sçh°°¦§>";
echo html_entity_decode($str);
?>

مذکورہ کوڈ کا HTML نتیجہ مندرجہ ذیل ہے (اس کا منبع کو دیکھئے):

<!DOCTYPE html>
<html>
<body>
<? W3S?h????>
</body>
</html>

خروجی مرورگر برای کد بالا:

<? W3S?h????>

تعریف اور استعمال

html_entity_decode() فنکشن HTML کی امتیازیابی کو اعداد کو فاکترومابندی سے تبدیل کرتا ہے。

html_entity_decode() فنکشن ہے htmlentities() عملگر معکوس.

قانون‌نویسی

html_entity_decode(string,flags,character-set)
پارامتر توضیحات
string ضروری. رشته‌ای که باید نرم‌شده شود را مشخص می‌کند.
flags

اختیاری. روش پردازش نقل قول‌ها و استفاده از نوع مستندات را مشخص می‌کند.

نوع نقل قول‌های موجود:

  • ENT_COMPAT - پیش‌فرض. تنها نقل قول‌های دوگانه نرم‌شده می‌شوند.
  • ENT_QUOTES - نقل قول‌های دوگانه و یکگانه نرم‌شده می‌شوند.
  • ENT_NOQUOTES - هیچ نقل قولی نرم‌شده نمی‌شود.

نوافذ اضافی برای تعیین نوع مستندات استفاده شده:

  • ENT_HTML401 - پیش‌فرض. به عنوان HTML 4.01 پردازش می‌شود.
  • ENT_HTML5 - به عنوان HTML 5 پردازش می‌شود.
  • ENT_XML1 - به عنوان XML 1 پردازش می‌شود.
  • ENT_XHTML - به عنوان XHTML پردازش می‌شود.
character-set

اختیاری. مقدار رشته‌ای که مجموعه حروف مورد استفاده را مشخص می‌کند.

مقدار مجاز:

  • UTF-8 - پیش‌فرض. ASCII سازگار با چند بیت Unicode
  • ISO-8859-1 - اروپای غربی
  • ISO-8859-15 - اروپای غربی (شامل علامت‌های اروپایی و الفبای فرانسوی و فنلاندی که در ISO-8859-1 گم شده‌اند)
  • cp866 - مجموعه حروف اختصاصی DOS برای کyrillic
  • cp1251 - مجموعه حروف اختصاصی ویندوز برای کyrillic
  • cp1252 - مجموعه حروف اختصاصی ویندوز برای اروپای غربی
  • KOI8-R - روسی
  • BIG5 - چینی پیچیده، اصلی در تایوان استفاده می‌شود
  • GB2312 - چینی ساده، مجموعه حروف استاندارد ملی
  • BIG5-HKSCS - BIG5 با گسترش هنگ کنگ
  • Shift_JIS - ژاپنی
  • EUC-JP - ژاپنی
  • MacRoman - مجموعه حروف سیستم عامل Mac

نکات:در نسخه‌های PHP قبل از 5.4، مجموعه‌های حروف غیرقابل شناسایی نادیده گرفته می‌شوند و با ISO-8859-1 جایگزین می‌شوند. از نسخه PHP 5.4 به بعد، مجموعه‌های حروف غیرقابل شناسایی نادیده گرفته می‌شوند و با UTF-8 جایگزین می‌شوند.

جزئیات فنی

مقدار بازگشتی: رشته تبدیل شده را بازمی‌گرداند
نسخه PHP: 4.3.0+

日志 به‌روزرسانی:

نسخه توضیحات
PHP 5 character-set مقدار پیش‌فرض پارامتر به UTF-8 تغییر یافته است.
PHP 5.4

نوافذ إضافی برای تعیین نوع مستندات قابل استفاده برای جدول ترجمه اضافه شده است:

  • ENT_HTML401
  • ENT_HTML5
  • ENT_XML1
  • ENT_XHTML
PHP 5.3.4 پشتیبانی از کدگذاری چندبیت اضافه شده است.

مثال‌های بیشتر

مثال 1

HTML entity به کاراکتر تبدیل می‌شود:

<?php
$str = "Bill & 'Steve'";
echo html_entity_decode($str, ENT_COMPAT); // تنها نقل قول‌های دوگانه تبدیل می‌شود
echo "<br>";
echo html_entity_decode($str, ENT_QUOTES); // نقل قول‌های دوگانه و یکگانه تبدیل می‌شود
echo "<br>";
echo html_entity_decode($str, ENT_NOQUOTES); // هیچ نقل قولی تبدیل نمی‌شود
?>

خروجی HTML برای کد بالا (منبع کد را مشاهده کنید):

<!DOCTYPE html>
<html>
<body>
Bill & 'Steve'<br>
Bill & 'Steve'<br>
Bill & 'Steve'
</body>
</html>

خروجی مرورگر برای کد بالا:

Bill & 'Steve'
Bill & 'Steve'
Bill & 'Steve'

مثال 2

با استفاده از زبان‌های اروپای غربی، HTML entity به کاراکتر تبدیل می‌شود:

<?php
$str = "My name is Øyvind Åsane. I'm Norwegian.";
echo html_entity_decode($str, ENT_QUOTES, "ISO-8859-1");
?>

خروجی HTML برای کد بالا (منبع کد را مشاهده کنید):

<!DOCTYPE html>
<html>
<body>
نام من یوویند سان است. من نروژی‌زبان هستم.
</body>
</html>

خروجی مرورگر برای کد بالا:

نام من یوویند سان است. من نروژی‌زبان هستم.