الفرق بين المراجعتين ل"PHP/strip tags"

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

المراجعة الحالية بتاريخ 13:44، 9 أبريل 2018

(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.

انظر أيضًا

مصادر