PHP Handbuch
Zurück |  | Weiter

# addcslashes

(PHP 4, PHP 5)

addcslashes -- Stellt bestimmten Zeichen eines Strings ein "\" voran (wie in C)

## Beschreibung

string addcslashes ( string str, string charlist )

Gibt eine Zeichenkette zurück, in der allen Zeichen, die in charlist aufgeführt sind, ein "\" vorangestellt ist. Falls charlist die Zeichen \n, \r etc. enthält, werden diese im C-Stil konvertiert, während andere nicht-alphanumerische Zeichen mit einem ASCII-Wert kleiner als 32 oder höher als 126 in ihre oktale Repräsentation umgewandelt werden.

Seien Sie besonders vorsichtig, wenn Sie Zeichen wie 0, a, b, f, n, r t oder v escapen möchten. Sie werden zu \0, \a, \b, \f, \n, \r, \t oder \v gewandelt. In PHP sind \0 (NULL), \r (Wagenrücklauf), \n (Neue Zeile) und \t (Tabulator) vordefinierte Escape-Sequenzen, während in C alle der genannten Zeichen vordefinierte Escape-Sequenzen sind.

charlist-Angaben wie "\0..\37" (oktal) bewirken ein Escapen aller Zeichen mit einem ASCII-Code zwischen 0 und 31 (dezimal).

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

Wenn Sie eine Zeichensequenz im charlist-Parameter notieren, informieren Sie sich darüber, welche Zeichen sich zwischen dem ersten und dem letzten Zeichen befinden!

`<?php echo addcslashes('foo[ ]', 'A..z'); // Ausgabe: \f\o\o\[ \] // Alle groß- und kleingeschriebenen Buchstaben werden escaped // ... aber ebenfalls die Zeichen [\]^_` sowie die Tabulatoren, Zeilenwechsel // Wagenvorlauf-Zeichen etc. ?>`

Beachten Sie zudem, dass sofern das erste Zeichen einer Sequenz einen höheren ASCII-Wert hat als das zweite, keine Sequenz erstellt wird. Nur das erste und das letzte Zeichen sowie Punkte werden dann escaped. Verwenden Sie die Funktion ord(), um den ASCII-Wert eines Zeichens zu ermitteln.

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

Siehe auch stripcslashes(), stripslashes(), htmlspecialchars() und quotemeta().

Zurück | Zum Anfang | Weiter
String-Funktionen | Nach oben | addslashes