addcslashes

Esegue il quoting di una stringa con gli slash nello stile del C

string addcslashes(string $str, string $charlist)

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