可以通过三个PHP函数来运行外部命令
system();
exec();
shell_exec();
但是它们有什么区别呢?尽管它们有特定的应用,但在大多数情况下,它们都可以同样使用。我很想知道当它们可以同等使用时哪个是首选。例如,对于解压缩文件或压缩文件夹(使用 tar 命令),哪个是首选(可能从性能角度来看)?
更新: 在另一个问题中,我发现了一个非常有用的 link 描述这些功能的不同方面。我在这里分享链接,因为其他人可能会使用它来更好地了解安全问题和其他方面。
最佳答案
exec — 执行外部程序
system — 执行外部程序并显示输出
shell_exec — 通过 shell 执行命令并将完整的输出作为字符串返回
所以如果你不需要输出,我会选择 exec。
更多细节:
关于php - PHP 中的 system()、exec() 和 shell_exec() 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10828707/