strip_tags

(PHP 4, PHP 5, PHP 7, PHP 8)

strip_tagsВидаляє HTML і PHP-теги з рядка

Опис

strip_tags(string $str, string $allowable_tags = ?): string

Ця функція намагається повернути рядок str з усіма видаленими NULL-байтами, HTML та PHP тегами. Для видалення використовується той же рушій, що й у функції fgetss().

Параметри

str

Вхідний рядок.

allowable_tags

Ви можете використовувати необов'язковий другий параметр, щоб вказати теги, які не повинні видалятись.

Зауваження:

HTML-коментарі та PHP-теги будуть видалені в усякому разі. Це прописано у коді та не може бути змінено за допомогою allowable_tags.

Зауваження:

Цей параметр не повинен містити пробілів. strip_tags() розглядає тег як нечутливий до регістру рядок, який знаходиться між < та першим пробілом, або >. Це означає, що strip_tags("<br/>", "<br>") поверне пустий рядок.

Значення, що повертаються

Повертає рядок без тегів.

Журнал змін

Версія Опис
5.0.0 strip_tags() тепер безпечна для бінарних даних.

Приклади

Приклад #1 Викоритання strip_tags()

<?php
$text
= '<p>Абзац.</p><!-- Коментар --> <a href="#fragment">Якийсь текст</a>';
echo
strip_tags($text);
echo
"\n";

// Дозволяємо теги <p> та <a>
echo strip_tags($text, '<p><a>');
?>

Поданий вище приклад виведе:

Абзац. Якийсь текст
<p>Абзац.</p> <a href="#fragment">Якийсь текст</a>

Примітки

Увага

Оскільки strip_tags() не перевіряє HTML-документ на валідність, часткові або зламані теги можуть призвести до видалення більших об'ємів тексту/інформації аніж очікувалося.

Увага

Ця функція не змінює атрибутів у тегах, які ви дозволили за допомогою allowable_tags, включаючи атрибути style та onmouseover, які шкідливий користувач може розмістити для відображення іншим користувачам.

Зауваження:

Імена тегів у HTML, які перевищують довжину в 1023 байта будуть розглядатися як невалідні незалежно від параметра allowable_tags.

Прогляньте також