php 执行system函数不报错,但是生成不了结果

$command= "D:/Program Files/SWFTools/pdf2swf.exe -t \"e:\\test.pdf\" -o \"e:\\test.swf\" -s flashversion=9 ";
system( $command );

大多时候没有权限执行,或者别的引用,直接调用system并没有效果,下面的代码调用com,我用过,比较有效(windows下哦):

function exec_wincmd($cmd)
{
$WshShell = new COM("WScript.Shell");
$cwd = getcwd();
if (strpos($cwd,' '))
{ if ($pos = strpos($cmd, ' '))
{ $cmd = substr($cmd, 0, $pos) . '" ' . substr($cmd, $pos);
}
else
{ $cmd .= '"';
}
$cwd = '"' . $cwd;
}
$oExec = $WshShell->Run("cmd /C \" $cmd\"", 0,true);

return $oExec == 0 ? true : false;
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-02-04
这样写试试 `$command`

php 执行system函数不报错,但是生成不了结果
大多时候没有权限执行,或者别的引用,直接调用system并没有效果,下面的代码调用com,我用过,比较有效(windows下哦):function exec_wincmd($cmd){ WshShell = new COM("WScript.Shell");cwd = getcwd();if (strpos($cwd,' ')){ if ($pos = strpos($cmd, ' ')){ $cmd = substr($cmd,...

php使用system函数执行python脚本没现象
system只返回状态码,所以和你直接执行.py的效果肯定不一样啊。

php的system函数
你的错觉就在这儿。你把 return 0;改为任意其它 的数字,比如return 999;再运行你的e.php看看,页面输出应该还是0的。。这个0,是e.php文件中的system函数运行失败的返回值!而不是a.exe的

PHP中使用exec,system等函数的一点疑问
一,这可能存在一个路径的问题;二,这可能是A.EXE不能输出B.TXT内容在网页里;

菜鸟求助:PHP中调用系统命令为何有些命令总是失败
方法一:用PHP提供的专门函数(四个):PHP提供4个专门的执行外部命令的函数:exec(), system(), passthru(), shell_exec()1)exec()原型: string exec ( string $command [, array &$output [, int &$return_var ]] )说明: exec执行系统外部命令时不会输出结果,而是返回结果的最后一行。...

php的system函数的返回值代表什么啊
system执行的是你指定的系统可执行程序。所以,成功情况下返回的是你的函数程序执行的结果,不成功的时候返回的是false.所以你数0的时候成功?有点奇怪。

php调用 system函数用法 不能使用at执行任务?
如果没有记错,使用这个函数php.ini中的安全模式必须关闭,要不然为了安全起见php是不让调用系统命令的。

php中使用system函数执行linux系统命令mv怎么不行呢?
这样写是正确的。你执行代码后是否报错?还是只是没有效果?return变量会返回执行命令的输出的最后一行,你可以打印出来检查一下。执行系统命令也可以使用反引号`,我比较喜欢这样用 <?phpecho `mv file1 file2`;您的采纳就是对我的支持!

请教,怎么能让php页面不去等待system所调用的命令的返回结果?
可以修改系统命令本身在后台运行,在命令最后添加 >\/dev\/null 2>&1 &

如何让php执行shell
php给我们提供了system(),exec(),passthru()这三个函数来调用外部的命令.虽然这三个命令都能执行linux系统的shell命令,但是其实他们是有区别的:system() 输出并返回最后一行shell结果。exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。passthru() 只调用命令,把...

相似回答