exec()phantomjs不执行,没有显示错误

时间:2014-09-11 14:03:23

标签: php exec phantomjs

我在Windows平台上,我在app / webroot / phantomjs上有phantomjs可执行文件,在同一个文件夹中有一个js。 当我在php上做的时候:

$response = exec($this->webroot . 'app/webroot/phantomjs/phantomjs getweb.js');
没有任何反应。这是js的内容:

console.log('Hello, world!');
phantom.exit();

我使用绝对路径,因为这需要在网上在网页上执行。

编辑1:

使用时

$response = exec($this->webroot . 'app/webroot/phantomjs/phantomjs getweb.js 2>&1', $s, $o);

        echo $response;
        echo "<pre>";
        print_r($s);
        echo "</pre>";

        echo "<pre>";
        print_r($o);
        echo "</pre>";

我得到了

Array
(
)

1

编辑2:

这很好用:

echo exec("whoami");

编辑3: 这没有任何作用:

$response = exec($this->webroot . 'app/webroot/phantomjs/phantomjs getweb.js 2>&1', $s, $o);

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题.. 事情是phantomjs需要所有的完整路径。 这是我提出的解决方案:

$getout = exec('D:\\xampp\\htdocs\\phantomjsdir\\phantomjs.exe D:\\xampp\\htdocs\\rasterisejsdir\\rasterize.js http://localhost/pagetobecaptured/test D:\\xampp\\htdocs\\outputfiledir\\test2.jpg "1800px*840px"',$o,$e);