الدالة strip_tags()
في PHP
(PHP 4, PHP 5, PHP 7)
تُزِيل الدالة strip_tags()
وسوم HTML و PHP من سلسلة نصية.
الوصف
string strip_tags ( string $str [, string $allowable_tags ] )
تحاول الدالة strip_tags()
إعادة سلسلة نصية بعد تجريدها من جميع علامات NULL bytes و HTML و PHP من المعامل str
المعطى.
المعاملات
str
السلسلة النصية المدخلة.
allowable_tags
يمكنك استخدام المعامل الثاني الاختياري لتحديد الوسوم التي لا ينبغي إزالتها.
ملاحظات
ملاحظة: تُحذَف أيضًا تعليقات HTML ووسوم PHP. هذا الأمر مضبوطٌ في أساس هذه الدالة ولا يمكن تغييره مع المعامل allowable_tags
.
ملاحظة: في الإصدار PHP 5.3.4 والإصدارات الأحدث، تُتَجَاهَل وسوم XHTML ذاتية الإغلاق ويجب استخدام علامات إغلاق غير ذاتية فقط في allowable_tags
. على سبيل المثال، للسماح لكل من <br>
و <br/>
، يجب عليك استخدام:
<?php
strip_tags($input, '<br>');
?>
القيم المعادة
إعادة السلسلة النصية بعد حذف الوسوم منها.
سجل التغييرات
الإصدار | الوصف |
---|---|
5.3.4 | تتجاهل الدالة strip_tags() علامات XHTML ذاتية الإغلاق في allowable_tags .
|
5.0.0 | الدالة strip_tags() الآن آمنة ثنائية.
|
أمثلة
المثال 1: مثال على الدالة strip_tags()
<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);
echo "\n";
// Allow <p> and <a>
echo strip_tags($text, '<p><a>');
?>
ناتج المثال السابق:
Test paragraph. Other text
<p>Test paragraph.</p> <a href="#fragment">Other text</a>
ملاحظات
تحذير: لأن الدالة strip_tags()
لا تحقق من صحة شيفرة HTML، يمكن أن تؤدي الوسوم الجزئية أو ذات البنية غير الصحيحة إلى إزالة المزيد من البيانات أكثر من المتوقع.
تحذير: لا تُعدِّل هذه الدالة أي خاصيات تابعة للوسوم التي تسمح بها باستخدام allowable_tags
، بما في ذلك الخاصية onmouseover
التي قد يستعملها مستخدم مؤذٍ عند نشر النص الذي سيُعرَض للمستخدمين الآخرين.
ملاحظة: سيُتَعَامَل مع أسماء العلامات في HTML المدخلة التي يزيد طولها عن 1023 بايت كما لو كانت غير صالحة، بغض النظر عن المعامل allowable_tags
.
انظر أيضًا
- الدالة
htmlspecialchars()
: تحويل الأحرف الخاصة إلى مدخلات HTML.