(PHP 4 >= 4.0.3, PHP 5, PHP 7)
escapeshellarg — Maskiert eine Zeichenkette (String), um sie als Shell-Argument benutzen zu können
$arg
) : stringescapeshellarg() fügt einfache Anführungszeichen um eine Zeichenkette herum ein und maskiert alle existierenden einfachen Anführungszeichen innerhalb der Zeichenkette und ermöglicht es so die Zeichenkette direkt als Argument einer Shell-Funktion zu verwenden so dass es als ein einziges Argument interpretiert wird. Die Funktion sollte benutzt werden um aus Benutzereingaben stammende Argumente an Shell-Funktionen weiterzugeben. Zu den Shell-Funktionen zählen unter anderem exec(), system() und der Backtick Operator.
Unter Windows ersetzt escapeshellarg() statt dessen Prozentzeichen, Ausrufezeichen (verzögerte Variablenersetzung) und doppelte Anführungszeichen mit Leerzeichen, und schließt die Zeichenkette in doppelte Anführungszeichen ein.
arg
Die zu maskierende Zeichenkette.
Die maskierte Zeichenkette.
Beispiel #1 escapeshellarg() Beispiel
<?php
system('ls '.escapeshellarg($dir));
?>
Version | Beschreibung |
---|---|
5.4.43, 5.5.27, 5.6.11 | Ausrufezeichen werden nun durch Leerzeichen ersetzt. |