发布网友 发布时间:2022-04-28 02:49
共2个回答
懂视网 时间:2022-04-28 07:10
php中exec和system的区别:system执行外部程序并且显示输出,它可以输出和返回结果;exec执行外部程序不输出结果而是返回结果的最后一行,但如果添加第二个参数array,也可以得到完整的结果。
推荐:《PHP视频教程》
在PHP中调用外部命令,可以用exec 及 system来实现:
system() ---执行外部程序,并且显示输出
原型:
string system (string command [, int return_var])
system()函数很其它语言中的差不多,它执行给定的命令,输出和返回结果。第二个参数是可选的,用来得到命令执行后的状态码。
返回结果
成功返回0,
失败(命令不存在等原因) 返回 非0值
exec() ---执行外部程序
原型:
string exec (string command [, string array [, int return_var]])
exec ()函数与system()类似,也执行给定的命令,但不输出结果,而是返回结果的最后一行。虽然它只返回命令结果的最后一行,但用第二个参数array 可以得到完整的结果,方法是把结果逐行追加到array的结尾处。所以如果array不是空的,在调用之前最好用unset()最它清掉。只有指定了第二 个参数时,才可以用第三个参数,用来取得命令执行的状态码。
例子:
exec("/bin/ls -l"); exec("/bin/ls -l", $res); exec("/bin/ls -l", $res, $rc);
热心网友 时间:2022-04-28 04:18
手册中都有讲呀。
1、string exec ( string command [, array output [, int return_var]] )
执行外部命令,不输出结果,但是返回执行结果的最后一行。如果提供了output数组则数组中包括所有执行结果。如果你需要用它来执行后台运行的程序,确保已经把输出重新定向到另一个文件中,否则php会一直等待它执行完毕才会继续向浏览器输出。
2、string system ( string command [, int return_var] )
执行外部命令,输出结果,返回执行结果的最后一行。
3、void passthru ( string command [, int return_var] )
执行外部命令,直接向浏览器输出结果。
要认真看手册。