php在linux下有exec或者system的调用,在windows下调用如何呢?区别呢?
首先确认一下php对应的环境是否配置OK
1.检查php.ini文件的disable_functions设置,设置为空即可
2.检查服务环境用户的在操作系统的权限
3.设置php.ini的safe_mode为off
然后执行下面的两句:
<?php
print_r(system("dir"));
?>
返回
驱动器 D 中的卷是 安装文件
卷的序列号是 A0C4-8E03
D:\wwwroot 的目录
2012/06/25 18:35 <DIR> .
2012/06/25 18:35 <DIR> ..
2012/06/14 14:04 346 1.html
2012/04/10 11:45 <DIR> application
2011/11/15 02:36 6,357 index.php
2012/04/10 11:45 <DIR> system
2012/06/25 18:35 38 testarray.php
2012/06/14 11:33 <DIR> upfile
3 个文件 6,741 字节
5 个目录 122,353,737,728 可用字节
5 个目录 122,353,737,728 可用字节
这里的返回结果跟在windows的命令行返回一样的。
再看下面语句
返回结果
5 个目录 122,353,737,728 可用字节
再看下面代码
<?php
print_r(passthru("dir"));
?>
返回结果是:
驱动器 D 中的卷是 安装文件
卷的序列号是 A0C4-8E03
D:\wwwroot 的目录
2012/06/25 18:41 <DIR> .
2012/06/25 18:41 <DIR> ..
2012/06/14 14:04 346 1.html
2012/04/10 11:45 <DIR> application
2011/11/15 02:36 6,357 index.php
2012/04/10 11:45 <DIR> system
2012/06/25 18:41 40 testarray.php
2012/06/14 11:33 <DIR> upfile
3 个文件 6,743 字节
5 个目录 122,353,737,728 可用字节
这个跟system差不多,少了一个目录的统计。
更多信息请查看IT技术专栏