起因
之前写自动登录操作一个网站的PHP脚本,但是发现该网站用js代码做了cookie的计算和验证,所以使用了v8js。
安装
安装v8。(Mac:brew install v8)使用pecl install v8js 安装的过程中要求输入v8的安装目录。安装完之后,把生成的.so动态链接库引入到ini文件中。include_path = ".:/usr/lib/php/pear"extension=/usr/lib/php/extensions/no-debug-non-zts-0303/v8js.so
用php -i | grep v8js查看v8扩展的运行状态。
使用
<?php$v8 = new V8Js();/* basic.js */$JS = <<< EOTlen = print('Hello' + ' ' + 'World!' + "\\n");len;EOT;try {var_dump($v8->executeString($JS, 'basic.js'));} catch (V8JsException $e) {var_dump($e);}?>
以上例程会输出:
Hello World!int(13)