如何使用php运行phonegap?

时间:2014-04-29 05:14:06

标签: php android cordova command-line-interface

如何使用php脚本运行phonegap cli? 我可以用windows cmd手动运行phonegap,一切都很好但是当我在php exec中调用ex:'phonegap build android'时,没有任何反应。没有错误没有阻挡,没有
这是我的代码:

test.php的

<?php
$out = array();
try {
    $create_command = 'phonegap create test';
    $build_command = 'phonegap build android';
    exec($build_command,$out);
    foreach($out as $line) echo $line.'<br>';
}
catch(Exception $ex) {
    echo $ex->getMessage();
}
?>

通过我在环境中注册php的方式然后在cmd中运行'php%path_to_file%/ test.php'并且它有效。

3 个答案:

答案 0 :(得分:4)

感谢您的回复。但是我的代码没有任何问题。问题是fast-cgi,默认情况下没有安装在xampp上。我使用此Web服务器WT-NMP将我的Web服务器更改为nginx。

答案 1 :(得分:1)

尝试以下:

<?php
function sys_cmd($cmd)
{   
    $hd = popen($cmd,"r") or die('function disabled');
    while (!feof($hd))
    {
        $rs .= fread($hd,1024);     
    }
    pclose($hd);
    return $rs;
}

out = array();
try {
    $create_command = 'phonegap create test';
    $build_command = 'phonegap build android';

    sys_cmd ($build_command, $out);

    foreach($out as $line){
        echo $line.'<br>';
    }
}

catch(Exception $ex) {
    echo $ex->getMessage();
}
?>

答案 2 :(得分:0)

改变这个:

exec($build_command,$out);<br>
foreach($out as $line) echo $line.'<br>';

由此:

passthru( $build_command );

passthru命令与exec的作用相同,并将生成的代码直接写入浏览器。