Функции за низове
PHP Manual

addcslashes

(PHP 4, PHP 5)

addcslashesЕкранира специалните знаци в низ в стила на езика C

Описание

string addcslashes ( string $str , string $charlist )

Връща низ с обратно наклонени черти пред знаците, изредени в параметъра charlist .

Параметри

str

Низът, който ще се екранира.

charlist

Списък на символите, които ще се екранират. Ако charlist съдържа знаци, като \n, \r и т.н., то те ще бъдат преобразувани в C стил, докато другите не буквено-цифрови знаци с ASCII кодове по-малки от 32 и по-големи от 126 ще бъдат преобразувани до осмично представяне.

Когато дефинирате последователност от знаци в параметъра charlist, уверете се, че знаете кои знаци влизат в обхвата между началния и крайния знак.

<?php
echo addcslashes('foo[ ]''A..z');
// изход:  \f\o\o\[ \]
// Всички знаци в горен и долен регистър ще бъдат екранирани
// ... също така [\]^_`
?>

Също така, ако първият знак от обхвата има по-голяма ASCII стойност от последния знак - обхват няма да бъде създаден. Само началният, крайният и знакът "точка" ще бъдат екранирани. Можете да използвате функцията ord(), за да намерите ASCII стойността на даден знак.

<?php
echo addcslashes("zoo['.']"'z..A');
// изход:  \zoo['\.']
?>

Трябва да се внимава при избора на знаци като 0, a, b, f, n, r, t и v. Те ще бъдат преобразувани до \0, \a, \b, \f,\n, \r, \t и \v. В PHP само \0 (NULL), \r (връщане на каретката),\n (нов ред), \f (завършване на формуляр), \v (вертикална табулация) и \t (табулация) са предварително-дефинирани екраниращи последователности, докато в C всички горепосочени са предварително-дефинирани екраниращи последователности.

Връщани стойности

Връща екранирания низ.

Дневник на промените

Версия Описание
5.2.5 Добавени са екраниращите последователности \v и \f.

Примери

При стойност на параметъра charlist - "\0..\37", ще бъдат екранирани всички знаци с ASCII код между 0 и 31.

Example #1 Пример за addcslashes()

<?php
$escaped 
addcslashes($not_escaped"\0..\37!@\177..\377");
?>

Вж. също


Функции за низове
PHP Manual