Forum und email

addcslashes

(PHP 4, PHP 5)

addcslashes — Lägg till snedstreck i en sträng, likt C

Description

string addcslashes ( string $str , string $charlist )

Returnerar en sträng med omvända snedstreck framför de tecken som skickats med i charlist -parametern. Funktionen undantar \n, \r precis som C, tecken med en ASCII-kod lägre än 32 eller högre än 126 konverteras till dess oktala värde.

Var försiktig om du väljer att använda tecknen 0, a, b, f, n, r, t eller v. De kommer konverteras till \0, \a, \b, \f, \n, \r, \t eller \v. I PHP är \0 (NULL), \r (vagnretur), \n (ny rad) och \t (tab) fördefinerade s k "escapesekvenser", medan allihopa är det i C.

charlist som "\0..\37" skulle konvertera alla tecken med en ASCII-kod mellan 0 och 31.

Example#1 addcslashes() exempel

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

När du definerar en sekvens av tecken i charlist-argumentet, bör du hålla reda på vilka tecken som kommer med i sekvensen.

echo addcslashes('foo[ ]', 'A..z');
// output:  \f\o\o\[ \]
// All upper and lower-case letters will be escaped
// ... but so will the [\]^_` and any tabs, line
// feeds, carriage returns, etc.
Om det första tecknet i sekvensen har en längre ASCII-kod än det sista kommer det inte bli något av sekvensen. Endast första tecknet, sista tecknet och punkt-tecknet kommer påverkas. Använd ord()-funktionen för att hitta ASCII-koden för ett tecken.
echo addcslashes("zoo['.']", 'z..A');
// output:  \zoo['\.']

Se även stripcslashes(), stripslashes(), htmlspecialchars(), och quotemeta().