PHP.mk документација

addcslashes

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.addcslashes.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.addcslashes.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
addcslashes

Референца за `function.addcslashes.php` со подобрена типографија и навигација.

function.addcslashes.php

addcslashes

(PHP 4, PHP 5, PHP 7, PHP 8)

addcslashesQuote string with slashes in a C style

= NULL

addcslashes(string $string, string $characters): string

Цитатна низа со коси црти во C стил characters parameter.

Параметри

string

Стрингот што треба да се избегне.

characters

Враќа низа со коси црти пред знаците што се наведени во characters Список на знаци што треба да се избегнат. Ако \n, \r содржи знаци

итн., тие се претвораат во C-стил, додека другите неалфанумерички знаци со ASCII кодови пониски од 32 и повисоки од 126 се претвораат во октална репрезентација. characters Кога дефинирате низа од знаци во

Пример #1 addcslashes() аргумент, погрижете се да знаете кои знаци доаѓаат помеѓу знаците што ги поставувате како почеток и крај на опсегот.

<?php
echo addcslashes('foo[ ]', 'A..z');
// output: \f\o\o\[ \]
// All upper and lower-case letters will be escaped
// ... but so will the [\]^_`
?>
со Опсези ord() Исто така, ако првиот знак во опсегот има повисока ASCII вредност од вториот знак во опсегот, нема да се конструира опсег. Само почетниот, крајниот и знакот за период ќе бидат избегнати. Користете ја

Пример #2 addcslashes() функцијата за да ја најдете ASCII вредноста за знак.

<?php
echo addcslashes("zoo['.']", 'z..A');
// output: \zoo['\.']
?>

со Знаци во погрешен Редослед addcslashes() Внимавајте ако одлучите да избегнете знаци 0, a, b, f, n, r, t и v. Тие ќе бидат претворени во \0, \a, \b, \f, \n, \r, \t и \v, сите од кои се однапред дефинирани секвенци за бегство во C. Многу од овие секвенци се дефинирани и во други јазици изведени од C, вклучувајќи го и PHP, што значи дека можеби нема да го добиете посакуваниот резултат ако го користите излезот од characters.

Вратени вредности

Враќа избегнатиот стринг.

Примери

characters за генерирање код на тие јазици со овие знаци дефинирани во

Пример #3 addcslashes() example

<?php
$not_escaped
= "PHP isThirty\nYears Old!\tYay to the Elephant!\n";
$escaped = addcslashes($not_escaped, "\0..\37!@\177..\377");
echo
$escaped;
?>

Види Исто така

  • stripcslashes() - Де-цитирање на стринг со addcslashes
  • stripslashes() - Отстранува наводници од цитиран стринг
  • addslashes() - Става наводници на стринг со коси црти
  • htmlspecialchars() - Конвертирај специјални знаци во HTML ентитети
  • quotemeta() - Цитирање на мета знаци

Белешки од корисници 3 белешки

како "\0..\37", што би избегнало сите знаци со ASCII код помеѓу 0 и 31.
21 години пред
If you are using addcslashes() to encode text which is to later be decoded back to it's original form, you MUST specify the backslash (\) character in charlist!

Example:

<?php
  $originaltext = 'This text does NOT contain \\n a new-line!';
  $encoded = addcslashes($originaltext, '\\');
  $decoded = stripcslashes($encoded);
  //$decoded now contains a copy of $originaltext with perfect integrity
  echo $decoded; //Display the sentence with it's literal \n intact
?>

If the '\\' was not specified in addcslashes(), any literal \n (or other C-style special character) sequences in $originaltext would pass through un-encoded, but then be decoded into control characters by stripcslashes() and the data would lose it's integrity through the encode-decode transaction.
phpcoder at cyberpimp dot pimpdomain dot com
пред 18 години
addcslashes() treats NUL as a string terminator:

   assert("any"  === addcslashes("any\0body", "-"));

unless you order it backslashified:

   assert("any\\000body" === addcslashes("any\0body", "\0"));

(Uncertain whether this should be declared a bug or simply that addcslashes() is not binary-safe, whatever that means.)
stein at visibone dot com
пред 23 години
I have found the following to be much more appropriate code example:

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

This will protect original, innocent backslashes from stripcslashes.
Навигација

Прелистувај сродни теми и функции.

На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.