(PHP 4 >= 4.0.3, PHP 5, PHP 7, PHP 8)
escapeshellarg — 把字符串转义为可以在 shell 命令里使用的参数
$arg
): string
escapeshellarg() 将给字符串增加一个单引号并且能引用或者转义任何已经存在的单引号,这样以确保能够直接将一个字符串传入 shell 函数,并且还是确保安全的。对于用户输入的部分参数就应该使用这个函数。shell 函数包含exec()、system() 和执行运算符 。
在 Windows 上,escapeshellarg()
用空格替换了百分号、感叹号(延迟变量替换)和双引号,并在字符串两边加上双引号。此外,每条连续的反斜线(\
)都会被一个额外的反斜线所转义。
arg
需要被转义的参数。
转换之后字符串。
示例 #1 escapeshellarg() 的例子
<?php
system('ls '.escapeshellarg($dir));
?>