Forum und email

AddCSlashes

(PHP 4, PHP 5)

AddCSlashes — Quote string met slashes in de C stijl

Beschrijving

string addcslashes ( string $str , string $charlist )

Geeft een string weer met backslashes voor de characters die gegeven zijn in de charlist parameter. Het escaped \n, \r etc. in C-achtige stijl, characters met met ASCII code lager dan 32 en hoger dan 126 worden geconverteerd naar octaal formaat.

Wees voorzichtig als je de characters 0, a, b, f, n, r, t of v wilt escapen. Ze zullen worden vervangen door resp. \0, \0a, \b, \f, \n, \r, \t en \v. In PHP worden alleen \0 (NULL), \r (carriage return), \n (newline) en \t (tab) herkend als bijzondere tekens, maar in C worden al deze tekens speciaal geïnterpreteerd.

Je kan in charlist een bereik specifieren zoals "\0..\37", hetgeen alle characters zou escapen met een ASCII code tussen 0 en 31.

Example#1 addcslashes() voorbeeld

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

Als je een reeks characters specificeert in charlist let erop dat je precies weet welke characters tussen de opgegeven characters komen.

echo addcslashes('foo[ ]', 'A..z');
// output:  \f\o\o\[ \]
// alle hoofdletters en kleine letters zijn ge-esacped
// ... maar dat geldt ook voor [\]^_` en tabs, line
// feeds, carriage returns, enz.
Merk op dat een reeks niet als zodanig wordt geïnterpreteerd als de eerste character in de reeks een lagere ASCII waarde heeft dan het tweede character. In dat geval worden alleen het eerste en tweede character en de punt ge-escaped. Gebruik ord() om de ASCII waarde van een character te vinden.
echo addcslashes("zoo['.']", 'z..A');
// output:  \zoo['\.']

Zie ook stripcslashes(), stripslashes(), htmlspecialchars(), en quotemeta().