小弟初学PHP,很简单的一段代码。<?php
$out = `dir c:`;
echo '<pre>'.$out.'</pre>';
?>报错
Warning: shell_exec(): Unable to execute 'dir c:' in D:\phptest\test.php on line 2cmd.exe已给权限
php.ini下safe mode也是off的
不知还有何情况会导致这种错误发生?
$out = `dir c:`;
echo '<pre>'.$out.'</pre>';
?>报错
Warning: shell_exec(): Unable to execute 'dir c:' in D:\phptest\test.php on line 2cmd.exe已给权限
php.ini下safe mode也是off的
不知还有何情况会导致这种错误发生?
不过我没找到Security这一栏不知道能不能解决你的问题
我的这里一切正常!测试平台XP系统,PHP533。XP用户为administrator(管理员)
注意代码格式:<?php
$out = shell_exec("dir c:");
echo '<pre>'.$out.'</pre>';
?>
输出为:
驱动器 C 中的卷是 WINXP
卷的序列号是 335E-15FE C:\ 的目录2010-03-15 14:44 WINDOWS
2010-03-15 14:48 Documents and Settings
2010-03-15 14:57 Program Files
2010-03-15 14:58 0 CONFIG.SYS
2010-03-15 14:58 0 AUTOEXEC.BAT
2011-01-05 22:27 Intel
2011-03-09 08:21 508 RTHDCPL_Dump.txt
2011-01-06 20:05 83 ftnstat.stat
2011-01-15 14:24 58 b.txt
2011-01-07 00:58 Media
2011-01-08 21:28 Downloads
2011-01-16 00:05 249,945 grldr
2011-01-12 20:56 230,304 1.txt
2011-01-15 23:52 0 ExeDosCMD.tmp
2011-01-16 00:05 774,144 message
2011-01-25 15:48 Inetpub
2011-03-01 15:03 memcache
11 个文件 4,844,162 字节
8 个目录 9,732,882,432 可用字节
这个结果和cmd里的一样的。
关闭安全模式safe mode=off甚至完成后记得重新启动apache
但是shell_exe是需要""的,因为常会碰到路径的\需要转义,你没看我写给你也是""的么?你肯定没去试吧?
$out = shell_exec("dir c:");//代码里没有用:\\
echo '<pre>'.$out.'</pre>';
重启IIS后还是无效吧。。
SAFE MODE 早就OFF了。。