addcslashes

(PHP 4 , PHP 5)

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

Descrizione

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. La funzione inserisce il carattere di escape nello stile C in caso di \n, \r ecc., in caso di caratteri con codifica ASCII minore di 32 o superiore a 126 si applica la conversione nella rappresentazione ottale.

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. In PHP \0 (NULL), \r (carriage return), \n (newline) e \t (tab) sono sequenze di escape predefinite, anche in C tutte queste sono sequenze di escape predefinite.

Valorizzare il parametro charlist con "\0..\37", significa che si vuole inserire il carattere di escape davanti ai caratteri la cui codifica ASCII è comprese tra 0 e 37.

Esempio 1. Esempio di uso di addcslashes()

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

Quando si definisca una sequenza di caratteri nel parametro charlist occorre essere consapevoli di quali caratteri sono compresi nel range.

<?php
echo addcslashes('foo[ ]', 'A..z');
// output:  \f\o\o\[ \]
// Inserisce l'escape davanti a tutti i caratteri maiuscoli e minuscoli
// ... ma anche [\]^_` i tab, line
// feeds, carriage returns, etc.
?>

Inoltre, se il primo carattere di un range ha una codifica ASCII maggiore del secondo, il range non sarà applicato. Soltanto il primo, i punti, e l'ultimo carattere avrà la sequenza di escape. Utilizzare la funzione ord() per ottenere la codifica ASCII di un carattere.

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

Vedere anche stripcslashes(), stripslashes(), htmlspecialchars() e quotemeta().

Hosting by: hurra.com
Generated: 2007-01-26 17:56:22