escapeshellarg
(PHP 4 >= 4.0.3, PHP 5, PHP 7, PHP 8)
escapeshellarg — 把字串轉碼為可以在 shell 命令里使用的參數
說明
escapeshellarg(string
$arg
): stringescapeshellarg() 將給字串增加一個單引號並且能引用或者轉碼任何已經存在的單引號,這樣以確保能夠直接將一個字串傳入 shell 函式,並且還是確保安全的。對於使用者輸入的部分參數就應該使用這個函式。shell 函式包含 exec(), system() 執行運算子 。
在Windows上,escapeshellarg()用空格替換了百分號、感嘆號(延遲變數替換)和雙引號,並在字串兩邊加上雙引號。此外,每條連續的反斜線(\
)都會被一個額外的反斜線所轉義。
參數
-
arg
-
需要被轉碼的參數。
返回值
轉換之後字串。
範例
示例 #1 escapeshellarg() 的例子
<?php
system('ls '.escapeshellarg($dir));
?>
參見
- escapeshellcmd() - shell 元字元轉義
- exec() - 執行一個外部程式
- popen() - 打開程序檔案指針
- system() - 執行外部程式,並且顯示輸出
- 執行運算子