addcslashes
Esegue il quoting di una stringa con gli slash nello stile del C
La funzione restituisce una stringa con il carattere di backslash '\' anteposto ai caratteri che sono indicati nel parametro charlist.
str
La stringa su cui effettuare l'escape.
charlist
Una lista dei caratteri su cui effettuare l'escape. Se
charlist contiene i caratteri
\n, \r ecc., essi sono
convertiti nello stile C-like, mentre gli altri caratteri non alfanumerici
con codici ASCII minori di 32 e maggiori di 126 sono convertiti nella
rappresentazione ottale.
Quando si definisce una sequenza di caratteri nel parametro charlist
assicurarsi di sapere quali caratteri sono presenti tra i
caratteri che si sono impostati come inizio e la fine dell'intervallo.
<?php
echo addcslashes('foo[ ]', 'A..z');
// output: \f\o\o\[ \]
// Su tutte le lettere maiuscole e minuscole verrà effettuato l'escape
// ... ma anche [\]^_`
?>
Inoltre, se il primo carattere in un intervallo ha un valore ASCII maggiore
del secondo carattere nell'intervallo, non verrà costruito
nessun intervallo. Solo sull'inizio, sulla fine e sui caratteri period ('.') sarà
effettuato l'escape. Usare la funzione ord per trovare il
valore ASCII per un carattere.
<?php
echo addcslashes("zoo['.']", 'z..A');
// output: \zoo['\.']
?>
Occorre prestare attenzione se si imposta di anteporre il carattere di escape ai caratteri
0, a, b, f, n, r, t e v. Questi saranno convertiti in \0, \a, \b, \f, \n, \r, \t e \v,
i quali sono sequenze di escape predefinite in C. Molte di queste sequenze sono
anche definite in altri linguaggi derivati da C, incluso PHP, il che significa che
non si possono ottenere i risultati desiderati se si usa l'output di
addcslashes per generare codice in questi linguaggi
con questi caratteri definiti in charlist.
Restituisce la stringa con l'escape.
Version Description 5.2.5 Sono state aggiunte le sequenze di escape \v e \f.
Usare charlist pari a "\0..\37", significa che si vuole effettuare l'escape di tutti i caratteri con codice ASCII tra 0 e 31. Esempio di addcslashes <?php $escaped = addcslashes($not_escaped, "\0..\37!@\177..\377"); ?>
stripcslashes stripslashes addslashes htmlspecialchars quotemeta