Функции обработки строк
addslashes
Функции обработки строк
PHP Manual

# addcslashes

(PHP 4, PHP 5)

addcslashes — Экранирует спецсимволы в стиле языка C

### Описание

string addcslashes ( string `$str` , string `$charlist` )

Возвращает сроку `str` , в которой перед каждым символом из перечисленных в `charlist` символов добавлен обратный слэш (\). Экранируются \n, \r и т.д. в стиле языка C, символы с ASCII менее 32 и более 126 преобразуются в восьмеричное представление.

Будьте внимательны при экранировании символв 0, a, b, f, n, r, t и v. Они будут преобразованы в \0, \a, \b, \f, \n, \r, \t и \v. В C все они являются предопреденными escape-последовательностями, в то время как в PHP только \0 (`NULL`), \r (возврат каретки), \n (перевод строки) и \t (табуляция).

При передаче `charlist` вида "\0..\37" будут экранированы символы с ASCII кодами от 0 до 37.

Пример #1 Пример использования addcslashes()

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

Следует быть внимательным при указании диапазона символов в аргументе charlist. Проверяйте, какие символы входят в этот диапазон.

`<?php
echo addcslashes('foo[ ]', 'A..z');
// выводит: \f\o\o\[ \]
// Будут экранированы заглавные и строчные английские буквы
// ... а также [\]^_` а также табуляция,
// возврат каретки, перевод строки и т.д.
?>`

Также, если ASCII код первого символа диапозона больше, чем последнего, диапазон не будет создан. Вместо этого будут экранироваться только первый и последний символы и точка. Для определения ASCII кода символов используйте функцию ord().

`<?php
echo addcslashes("zoo['.']", 'z..A');
// выводит: \zoo['\.']
?>`

См. также описание функций stripcslashes(), stripslashes(), htmlspecialchars() и quotemeta().

Функции обработки строк
addslashes
Функции обработки строк
PHP Manual