php-addcslashes

  • 08.07.2026
  • admin
  • 1минут читать

<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. Они будут преобразованы в , a, b, f, n, r, t и v. В C все они являются предопреденными escape-последовательностями, в то время как в PHP только (NULL ), r (возврат каретки), n (перевод строки) и t (табуляция).

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


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

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

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

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

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

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