strip_tags
اگر متنِ خام داری و می خواهی حذف تگ HTML انجام دهی، از strip_tags() استفاده کن. رشته (String) یعنی متن؛ تگ (Tag) یعنی برچسب های HTML مثل <b>.
تعریف و کاربرد
strip_tags(string, allow) همه تگ های HTML، XML و PHP را حذف می کند. همچنین، دیدگاه ها (HTML comments) همیشه پاک می شوند. این تابع binary-safe است؛ یعنی روی بایت ها هم درست کار می کند.
سینتکس و پارامترها
- string: رشته ورودی برای پاک سازی.
- allow: تگ های مجاز که حذف نشوند؛ اختیاری است.
مثال پایه: حذف همه تگ ها
<?php
echo strip_tags("Hello <b>world!</b>");
?>
مثال: اجازه دادن به یک تگ خاص
می خواهی فقط تگ <b> بماند و بقیه حذف شوند؟
<?php
echo strip_tags("Hello <b><i>world!</i></b>", "<b>");
?>
نکات مهم و محدودیت ها
نکته: در پارامتر allow، تگ های خود-بسته XHTML مثل <br /> نادیده گرفته می شوند.
نکته: برای نمایش امن متن در HTML، گاهی htmlspecialchars مناسب تر است.
مثال ذهنی ساده
مثل پاک کن مدرسه فکر کن. متنِ وسط دفتر می ماند؛ قاب ها پاک می شوند. با حذف تگ HTML، فقط نوشته می ماند.
جمع بندی سریع
- همه تگ ها حذف می شوند.
- می توانی تگ های مجاز بدهی.
- دیدگاه های HTML همیشه حذف می شوند.
- برای نمایش امن، به htmlentities هم نگاه کن.