الفرق بين المراجعتين لصفحة: «PHP/addslashes»
ط إضافة عنوان الصفحة والتصنيفات |
مراجعة الصفحة |
||
سطر 2: | سطر 2: | ||
(PHP 4, PHP 5, PHP 7) | (PHP 4, PHP 5, PHP 7) | ||
تضيف الدالة addslashes() الخطوط المائلة العكسية (backslashes). | تضيف الدالة <code>addslashes()</code> الخطوط المائلة العكسية (backslashes). | ||
== الوصف == | |||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
string addslashes (string $str). | string addslashes (string $str). | ||
</syntaxhighlight>تُعيد الدالة سلسلةً نصيةً تسبقها خطوط مائلة عكسية (backslashes) قبل المحارف المُراد تهريبها. تتمثل هذه المحارف فيما يلي: | </syntaxhighlight>تُعيد الدالة سلسلةً نصيةً تسبقها خطوط مائلة عكسية (backslashes) قبل المحارف المُراد تهريبها. تتمثل هذه المحارف فيما يلي: | ||
* علامات الاقتباس المفردة (') | |||
* علامات الاقتباس المزدوجة (") | |||
* الخطوط المائلة العكسية (\) | |||
* NUL (البايت NUL) | |||
تستخدم الدالة <code>addslashes()</code> لتهريب أحد المحارف المذكورة آنفًا داخل كود برمجي بلغة PHP:<syntaxhighlight lang="php"> | |||
تستخدم الدالة addslashes() لتهريب أحد المحارف المذكورة آنفًا داخل كود برمجي بلغة PHP:<syntaxhighlight lang="php"> | |||
<?php | <?php | ||
$str = "O'Reilly?"; | $str = "O'Reilly?"; | ||
eval("echo '" . addslashes($str) . "';"); | eval("echo '" . addslashes($str) . "';"); | ||
?> | ?> | ||
</syntaxhighlight>قبل نسخة 5.4.0 للغة PHP، كانت ميزة <code>magic_quotes_gpc</code> مُفَعلة تلقائيًا، إذ تُطَبق الدالة <code>addslashes()</code> على كل من بيانات GET و POST و COOKIE. لذلك تجنب استخدام <code>addslashes()</code> على سلسلة نصية طُبِقَت عليها <code>magic_quotes_gpc</code> من قبل وإلا فإن السلسلة النصية ستُهرَب مرتين. تسمح الدالة <code>[[PHP/magic quotes gpc|magic_quotes_gpc()]]</code> بالتحقق من الميزة <code>magic_quotes_gpc</code> إن كانت مفعلة أم لا. | |||
يستعمل البعض الدالة <code>addslashes()</code> خطأً لمنع «حقن شيفرات SQL» أي SQL Injection. بدلًا من ذلك ينبغي استعمال الدوال الخاصة بالسلاسل النصية لقواعد البيانات. | |||
يستعمل البعض الدالة addslashes() خطأً لمنع «حقن شيفرات SQL» أي SQL Injection. بدلًا من ذلك ينبغي استعمال الدوال الخاصة بالسلاسل النصية لقواعد البيانات. | |||
=== المعاملات === | === المعاملات === | ||
سطر 37: | سطر 27: | ||
السلسلة النصية التي نريد تهريبها. | السلسلة النصية التي نريد تهريبها. | ||
== أمثلة == | |||
المثال 1: مثال بسيط عن الدالة <code>addslashes()</code><syntaxhighlight lang="php"> | |||
<syntaxhighlight lang="php"> | |||
<?php | <?php | ||
$str = "Is your name O'Reilly?"; | $str = "Is your name O'Reilly?"; | ||
// Is your name O\'Reilly? | // Is your name O\'Reilly? | ||
echo addslashes($str); | echo addslashes($str); | ||
?> | ?> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== انظر أيضًا == | |||
* stripcslashes(): حذف الخطوط المائلة العكسية التي أضيفت بواسطة الدالة addcslashes(). | * <code>[[PHP/stripcslashes|stripcslashes()]]</code>: حذف الخطوط المائلة العكسية التي أضيفت بواسطة الدالة <code>[[PHP/addcslashes|addcslashes()]]</code>. | ||
* stripslashes(): حذف الخطوط المائلة العكسية. | * <code>[[PHP/stripslashes|stripslashes()]]</code>: حذف الخطوط المائلة العكسية. | ||
* addcslashes(): تهريب سلسلة نصية بإستعمال الخطوط المائلة العكسية على نمط لغة C. | * <code>[[PHP/addcslashes|addcslashes()]]</code>: تهريب سلسلة نصية بإستعمال الخطوط المائلة العكسية على نمط لغة C. | ||
* htmlspecialchars(): تحويل المحارف الخاصة مدخلات HTML. | * <code>[[PHP/htmlspecialchars|htmlspecialchars()]]</code>: تحويل المحارف الخاصة مدخلات HTML. | ||
* quotemeta(): اقتباس المحارف الخاصة. | * <code>[[PHP/quotemeta|quotemeta()]]</code>: اقتباس المحارف الخاصة. | ||
* get_magic_quotes_gpc(): تتفقد حالة magic_quotes_gpc إن كانت مفعلةً أم لا. | * <code>[[PHP/get magic quotes gpc|get_magic_quotes_gpc()]]</code>: تتفقد حالة <code>magic_quotes_gpc</code> إن كانت مفعلةً أم لا. | ||
== مصادر == | |||
* صفحة الدالة addslashes في توثيق PHP الرسمي. | * [http://php.net/manual/en/function.addslashes.php صفحة الدالة addslashes في توثيق PHP الرسمي]. | ||
[[تصنيف:PHP]] | [[تصنيف:PHP]] | ||
[[تصنيف:PHP Function]] | [[تصنيف:PHP Function]] | ||
[[تصنيف:PHP String]] | [[تصنيف:PHP String]] |
مراجعة 14:52، 5 أبريل 2018
(PHP 4, PHP 5, PHP 7)
تضيف الدالة addslashes()
الخطوط المائلة العكسية (backslashes).
الوصف
string addslashes (string $str).
تُعيد الدالة سلسلةً نصيةً تسبقها خطوط مائلة عكسية (backslashes) قبل المحارف المُراد تهريبها. تتمثل هذه المحارف فيما يلي:
- علامات الاقتباس المفردة (')
- علامات الاقتباس المزدوجة (")
- الخطوط المائلة العكسية (\)
- NUL (البايت NUL)
تستخدم الدالة addslashes()
لتهريب أحد المحارف المذكورة آنفًا داخل كود برمجي بلغة PHP:
<?php
$str = "O'Reilly?";
eval("echo '" . addslashes($str) . "';");
?>
قبل نسخة 5.4.0 للغة PHP، كانت ميزة magic_quotes_gpc
مُفَعلة تلقائيًا، إذ تُطَبق الدالة addslashes()
على كل من بيانات GET و POST و COOKIE. لذلك تجنب استخدام addslashes()
على سلسلة نصية طُبِقَت عليها magic_quotes_gpc
من قبل وإلا فإن السلسلة النصية ستُهرَب مرتين. تسمح الدالة magic_quotes_gpc()
بالتحقق من الميزة magic_quotes_gpc
إن كانت مفعلة أم لا.
يستعمل البعض الدالة addslashes()
خطأً لمنع «حقن شيفرات SQL» أي SQL Injection. بدلًا من ذلك ينبغي استعمال الدوال الخاصة بالسلاسل النصية لقواعد البيانات.
المعاملات
str
السلسلة النصية التي نريد تهريبها.
أمثلة
المثال 1: مثال بسيط عن الدالة addslashes()
<?php
$str = "Is your name O'Reilly?";
// Is your name O\'Reilly?
echo addslashes($str);
?>
انظر أيضًا
stripcslashes()
: حذف الخطوط المائلة العكسية التي أضيفت بواسطة الدالةaddcslashes()
.stripslashes()
: حذف الخطوط المائلة العكسية.addcslashes()
: تهريب سلسلة نصية بإستعمال الخطوط المائلة العكسية على نمط لغة C.htmlspecialchars()
: تحويل المحارف الخاصة مدخلات HTML.quotemeta()
: اقتباس المحارف الخاصة.get_magic_quotes_gpc()
: تتفقد حالةmagic_quotes_gpc
إن كانت مفعلةً أم لا.