(PHP 4 >= 4.0.3, PHP 5, PHP 7, PHP 8)
escapeshellarg — Экранировать строку для того, чтобы она могла быть использована как аргумент командной строки
$arg
): stringФункция escapeshellarg() добавляет одинарные кавычки вокруг строки и кавычек и экранирует любые существующие одинарные кавычки, позволяя вам передать строку непосредственно в функцию оболочки и рассматривать её как один безопасный аргумент. Эта функция должна использоваться для того, чтобы экранировать отдельные аргументы для функций оболочки, полученные из пользовательского ввода. Экранирование аргумента необходимо в таких функциях оболочки как exec(), system() и оператор "обратный апостроф".
В Windows escapeshellarg() заменяет восклицательный знак,
знак процента (позднее связывание переменных) и двойные кавычки на пробелы и
добавляет двойные кавычки вокруг строки.
Кроме того, каждая серия последовательных обратных слешей (\
)
экранируется одним дополнительным обратным слешем.
arg
Аргумент, который будет экранирован.
Экранированная строка.
Пример #1 Пример использования escapeshellarg()
<?php
system('ls '.escapeshellarg($dir));
?>