PHP 可通过以下两种方法调用命令行程序:exec() 函数:执行命令并返回输出,但不会打印。shell_exec() 函数:执行命令,返回并打印输出。
在 PHP 中调用命令行程序需要用到 exec()
或 shell_exec()
函数。这两个函数允许您执行外部命令并返回结果或以字符串形式打印在页面上。
exec()
函数exec()
函数执行一个命令并返回其输出作为字符串。但是,它不能打印输出。
语法:
exec($command, &$output, &$return_var);
参数:
$command
:要执行的命令。&$output
(可选):通过引用传递的变量,它接收命令的输出。&$return_var
(可选):通过引用传递的变量,它接收返回代码。范例:
<?php exec('ls -la', $output); print_r($output); ?>
shell_exec()
函数shell_exec()
函数执行一个命令并返回其输出作为字符串,并且也会打印输出。
语法:
shell_exec($command);
参数:
$command
:要执行的命令。范例:
<?php $output = shell_exec('ls -la'); echo $output; ?>
假设您有一个名为 test.txt
的文件,您希望使用 PHP 打印其内容。您可以使用以下代码:
<?php $output = shell_exec('cat test.txt'); echo $output; ?>
exec()
和 shell_exec()
函数时,需要谨慎,因为它们可以在服务器上执行任意命令。popen()
或 proc_open()
函数,以更好地控制外部程序的执行。