PHP执行系统命令的4个方法 : system , shell_exec , exec , passthru

通过执行系统命令,我们可以调用系统的一些功能,甚至能与其他语言进行交互。

1 system() :
system — 执行外部程序(命令行),并且显示输出
这个函数会将结果直接进行输出 (注意:是直接输出区别于返回值,因为这个,我一般不用它),命令成功后返回输出的最后一行,失败返回FALSE

2 shell_exec():
shell_exec — 通过 shell 环境执行命令 ( 这就意味着这个方法只能在 linux 或 mac os的shell环境中运行 ),并且将完整的输出以字符串的方式返回。
命令执行的输出。 如果执行过程中发生错误或者进程不产生输出,则返回 NULL。

3 exec():
exec — 执行一个外部程序
返回命令执行结果的最后一行内容。如果想要获取命令的输出内容, 请确保使用 output 参数

4 passthru():
passthru — 执行外部程序并且显示原始输出

总结:我们执行外部命令时,如果想获取到执行结果。最合适的方法是 exec()方法,它不会有自动的输出。如果结果只有一行,则结果可以直接是它的返回值。如果返回结果有多个,则可以考虑使用output 或 return_var 参数获取它的返回值





















你可能感兴趣的:(php)