توضیح:
یکی از توابع پر کاربرد رشته در php تابع addcslashes است.
این تابع از لحاظ تامین امنیت کوئری زدن به پایگاه داده مفید است.
در این تابع می توانیم کاراکترهایی که نیاز به escape شدن دارند را مشخص کنیم. این تعیین کاراکتر یا بصورت تک واژه یا بصورت بازه کاراکتری برای مثال A..D یا a..d برای تعیین بازه از دو نقطه میان کاراکترها استفاده میشود.
این تابع در انتخاب کاراکترها، حساس به نوع حروف (کوچک بودن یا بزرگ بودن) است.
در هنگام استفاده از این تابع مراقب باشید که برخی از کاراکترهای از پیش escape شده توسط php دوباره escape نشود.
کاراکترهای escape شده از قبل عبارتند از:
- null => \0
- vertical tab => \v
- tab => \t
- form feed => \f
- new line => \n
- carriage return => \r
نحوه نوشتن:
1 |
addcslashes(string, characters); |
پارامترها:
- مقدار string: یک مقدار رشته.(ضروری)
- مقدار characters: کاراکترهایی که قصد escape کردن دارید.این کاراکتر میتواند یک کاراکتر یا بازه میان چند کاراکتر باشد.(ضروری)
مقدار بازگشت:
رشته escape شده
نسخه پشتیبانی:
(PHP 4, PHP 5, PHP 7, PHP 8)
مثال:
1 2 3 4 5 |
<?php $str = addcslashes("Hello World!","W"); echo($str); ?> //Hello \World! |
1 2 3 4 5 6 7 8 9 10 11 |
<?php $str = "Welcome to my humble Homepage!"; echo $str."<br>"; echo addcslashes($str,'m')."<br>"; echo addcslashes($str,'H')."<br>"; ?> /* Welcome to my humble Homepage! Welco\me to \my hu\mble Ho\mepage! Welcome to my humble \Homepage! */ |
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php $str = "Welcome to my humble Homepage!"; echo $str."<br>"; echo addcslashes($str,'A..Z')."<br>"; echo addcslashes($str,'a..z')."<br>"; echo addcslashes($str,'a..g'); ?> /* Welcome to my humble Homepage! \Welcome to my humble \Homepage! W\e\l\c\o\m\e \t\o \m\y \h\u\m\b\l\e H\o\m\e\p\a\g\e! W\el\com\e to my hum\bl\e Hom\ep\a\g\e! */ |