PHP 中的 exec与shell_exec函数的区别

exec与shell_exec函数的区别

exec与shell_exec函数都是PHP中的系统函数,它们都可以用来执行系统命令,但是它们之间有一定的区别。

1.返回值不同

exec函数会返回最后一行执行结果,如果执行的命令有多行输出,只会返回最后一行,而shell_exec函数会返回执行结果的全部内容。

2.执行效率不同

exec函数会将系统命令拆分成多个参数,然后逐个执行,而shell_exec函数只需要一次性执行,所以shell_exec函数执行效率更高。

3.超时时间不同

exec函数可以设置超时时间,而shell_exec函数没有超时时间的设置,所以如果执行的系统命令比较耗时,一定要使用exec函数。

4.危险性不同

exec函数可以指定参数,这样可以防止用户输入不安全的参数,而shell_exec函数没有这样的限制,所以它更加危险。

你可能感兴趣的:(php,开发语言)