这2天在调试PHP时遇到一个问题:
要写一段代码,其中包含 echo $cmd;
system($cmd);但是system执行得不出预计的结果,然后把前台页面上面显示的$cmd 复制到windowsxp自带的终端上执行却可以成功。
不知哪位大侠可以指点一下^_^PS:
$cmd 组成如下:
$cmd = 'cd c:\Documents and Settings\CC_VOB && cleartool diff ';
$cmd .= $file1;
$cmd .= ' ';
$cmd .= $file2;
$cmd .= ' > c:\baseline\FileDiff.txt';而file1和2都包含
$file1 .= '@@\main\Proj_Int\\';
有点困惑
要写一段代码,其中包含 echo $cmd;
system($cmd);但是system执行得不出预计的结果,然后把前台页面上面显示的$cmd 复制到windowsxp自带的终端上执行却可以成功。
不知哪位大侠可以指点一下^_^PS:
$cmd 组成如下:
$cmd = 'cd c:\Documents and Settings\CC_VOB && cleartool diff ';
$cmd .= $file1;
$cmd .= ' ';
$cmd .= $file2;
$cmd .= ' > c:\baseline\FileDiff.txt';而file1和2都包含
$file1 .= '@@\main\Proj_Int\\';
有点困惑
解决方案 »
- 关于PHP调用COM组件的问题
- 数组和插入数据库的问题。急!
- 求助php[widgets开发]
- 按照教程写了一个php page class,为什么运行不了
- csdn的频道的RSS怎么弄到foxmail的RSS自动获取呢?
- 仍然是表格输出的问题
- 请教个问题比较急!谢谢!~
- 怎样防止用户用aaa.php?pass=yes登陆?
- 大家看看为什么我的分页不行呢? (紧跟上一帖,请各位网有看了第一帖后继续跟帖)
- 这是什么错误?我的源码在下面:Parse error: parse error in /home/tdrmedc/public_html/login.php on line 48
- looking for talented and passionate php Developer and UI Designers
- 勾股定理用PHP怎么写?
刚刚把命令写在一个 批处理文件里面。
在windows下双击那个批处理文件可以得到结果,FileDiff.txt里面有内容。
但是在php里面弄:chdir('c:\\');
$newBat = 'c:\getFileDiff.bat';
system($newBat);却是产生一个大小为0,内容为空的 FileDiff.txt.
我想应该不是重定向的问题,可能是CC本身的问题?
弄了2天都没有弄好,刚刚注册了ibm cc论坛,明天去问问。
参照《php manual》写过一段如下的程序追踪:chdir('c:\\');
$newBat = 'c:\getFileDiff.bat';
$last_line = system($newBat, $retval);
echo '
</pre>
<hr />last line of output: ' . $last_line . '
<hr />Return value: ' . $retval ;得到的结果是Return value: 1 说明是执行这个脚本的时候出错的,问题是我在xp自带的 cmd.exe下输入:getFileDiff.bat运行是成功的,双击这个图标运行也可以,但是在php上面运行就不可以了。
同意phpknows的观点,可能是权限问题。是不是从ie上访问这个php网页所执行的php的system是不具有我本机的权限的?因为我之前已经有cygwin的东东chmod,chown把 getFileDiff.bat设置为所有人都可以执行了。
如果是在Linux下那我有办法,我之前碰过类似权限情况。前后台用消息队列进行通讯,后台写个守护进程,然后等待前台页面的消息。当接到相关的的网页信息后就重启xx服务或者执行xx只有本机用户才能执行的命令。但是我基本上没有windows的编程经验。
暂时还挺无助的。