gpt4 book ai didi

javascript - Phantom 将 php 变量传递给 js

转载 作者:行者123 更新时间:2023-12-03 06:05:07 24 4
gpt4 key购买 nike

我知道有数百个关于如何将 php 变量传递给 JS 的问题,但我尝试了几种解决方案,但没有任何效果。

我对 javascript 还很陌生,我正在使用 phantomjs 来获取外部网页的 URL。

我有这个 script.js

var page = require('webpage').create();
page.onError = function(msg, trace) {
//prevent js errors from showing in page.content
return;
};
page.open('http://www.google.com', function () {
console.log(page.content); //page source
phantom.exit();
});

由 getweb.php 调用

<?php
exec ('phantomjs script2.js ', $html);
var_dump($html) ;
?>

工作完美。但是如果我想用 php 变量代替 google.com 它不起作用,我猜(只是猜......)这是因为 phantom 没有被导航器解释。

我试图把

    <script>
var adress = '<?php echo "http://www.google.com" ; ?>';
</script>

在执行和更改我的脚本之前

var page = require('webpage').create();
page.onError = function(msg, trace) {
//prevent js errors from showing in page.content
return;
};
page.open(adress, function () {
console.log(page.content); //page source
phantom.exit();
});

但只花了几个小时却没有任何反应。

如何将 php 变量传递给 script.js ?

非常感谢

最佳答案

我认为最好的办法是在使用脚本执行 Phantom.JS 时传递额外的参数。我无法在您的上下文中进行测试,但请尝试这样的事情。在您的 PHP 中:

exec ('phantomjs script2.js "http://example.com/"', $html);

然后在 JavaScript 中,对 system.args 执行 console.log()。其中之一应该是http://example.com/。另请参阅:http://phantomjs.org/api/system/property/args.html

关于javascript - Phantom 将 php 变量传递给 js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39583281/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com