当前位置: 首页 > 面试题库 >

在PHP中执行JavaScript

马德宇
2023-03-14
问题内容

我正在用PHP生成典型的Web 2.0
HTML页面:它包含许多<script>标记和JavaScript代码,这些事件将在load事件之后实质上改变DOM。

有没有一种方法可以直接从PHP获取最终的HTML代码,而无需使用任何浏览器打开页面?

例如,假设页面的HTML是(仅作为示例):

<html>
<head>
<script>...the jquery library code...</script>
<script>$(document).ready(function() { $("body").append("<p>Hi!</p>");</script>
</head>
<body>
</body>
</html>

该HTML保存在$htmlPHP变量中。现在,我想将该变量传递给某个函数,该函数将返回$ result =
<html>....<body><p>Hi!</p></body></html>

这可能吗?

编辑
:由于你们中的许多人对我的要求感到困惑,所以我将解释原因。不幸的是,用户面对的所有内容都是用javascript制作的,这使搜索引擎无法抓取该网站。因此,我想将它们发送给事后准备的HTML代码。


问题答案:

使用PHP评估JavaScript代码,请查看V8JavaScript引擎扩展,您可以将其编译为PHP二进制文件:

  • http://php.net/manual/zh/book.v8js.php

V8是Google的开源JavaScript实现。



 类似资料:
  • 问题内容: 由于某些原因,我必须运行一个php脚本才能从Python获取图像。因为php脚本很大,而且不是我的,所以我需要几天的时间才能找到所使用的正确算法并将其转换为python。 我想知道是否有任何方法可以运行带有少量参数的php脚本,以返回python中的图像。 问题答案: 示例代码:

  • 问题内容: 在我们的centos6服务器中。我想以apache用户的身份在cron作业中执行php脚本,但不幸的是它不起作用。 这是crontab的版本(crontab -uapache -e) 这是“ test.php”文件的源代码,可以与“ apache”用户作为所有者正常工作。 我尝试将php替换为php的完整路径(/ usr / local / php / bin / php),但它也不起

  • 问题内容: 我将页面内容保存在数据库中,并希望执行字符串中的任何php代码。因此,如果我的字符串是: 我只想执行。使用eval()将尝试执行。 有什么办法吗? 问题答案: 不用说,您应该尽快找到另一个解决方案。同时,您可以像这样评估代码: 演示:http://codepad.org/ao2PPHN7 我不能足够强调:eval是危险的,应用程序代码不应位于数据库中。尝试使用模板解析器,例如Smart

  • 问题内容: 假设您有这样的课程: 在python中,此类仅在分配值时才起作用: 所以基本上,我的问题是我是否可以从php发送变量以执行python类,并返回其输出(它是字符串)并继续执行我的php代码? 有什么建议? 解 在php中: 在python中: 问题答案: 首先,创建一个包含要执行的python脚本的文件,包括(或加载)类和 现在,使用以下行获取结果:

  • 问题内容: 我正在尝试按计划运行php- script。所以我认为crontab是个好主意。我正在使用的服务器在我不太熟悉的Linux上。所以我遇到的问题是,我不知道如何从php使脚本可执行。我需要引用该脚本,或将其放入可以从命令行运行php的文件夹中。所以我不知道给我的crontab提供什么路径,例如: 我发现有关此php可执行文件的一些模糊信息 但是我在那里找不到任何php文件,也许我没有安装

  • 我试图在我的php脚本上执行这个命令。shell_exec(“phantomjs C:\sample\sample.js”); 但它返回null,仅仅几秒钟后。我预计这将需要很长时间,因为我已经在cmd上测试了这个命令,并且它正在工作。 我正在使用ajax调用执行此脚本的控制器,以便它可以在后台运行。问题是php端调用exec/shell\u exec命令。谁能启发我? 这是我的密码: 看法php