找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

只需一步,快速开始

查看: 194|回复: 0

[技术文章] 使用V8js实现PHP运行Javascript代码

[复制链接]

2346

主题

1

回帖

7479

积分

版主

积分
7479
发表于 2024-9-1 15:48:18 | 显示全部楼层 |阅读模式
通过这篇文章,可以让你实现PHP运行Javascript代码,使用的是V8Js库。
Windows:

在Jan-E这里下载完整的编译好的PHP版本,里面有PHP全部的类库,其中就包含了V8js,下载后直接解压替换原来的php目录就可以了,这种方法是最方便的:

https://www.apachelounge.com/viewtopic.php?t=6359
当然你也可以从里面提取出你需要的文件,将它们解压到各自的文件夹中:

\php\ 文件夹:

    v8.dll
    v8_libbase.dll
    v8_libplatform.dll
    icui18n.dll (php7)
    icuuc.dll (php7)

\php\ext\文件夹:

    php_v8js.dll

配置你的php.ini文件:
extension=php_v8js.dll
最后重启你的服务就可以了!!
Linux:

linux我还没具体测试过,可以参考V8js的GitHub上面给出的一个教程:https://github.com/phpv8/v8js/wiki/

提供个简单的例子:

<?php

$v8 = new V8Js();

$JS = <<< EOT

var string1 = 'Hello' + ' ' + 'World!';
len = print(string1+"\\n");
var string2 = 'Hello' + ' ' + 'World2!';
len2 = print(string2+"\\n");
string1+","+string2;
EOT;

try {
  $temp = $v8->executeString($JS);
  $temp = explode(",",$temp);
  print_r($temp);
} catch (V8JsException $e) {
  print_r($e);
}
PHPCopy


运行结果如下:

Hello World!
Hello World2!
Array
(

[0] => Hello World!
[1] => Hello World2!
)

通过这种方法,可以实现一些网站数据加密脚本直接加载运行,无需解密之后转换成php代码!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|114源码网 ( 黔ICP备2023004328号-2 )

GMT+8, 2024-11-23 16:20 , Processed in 0.072804 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表