Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php-从Javascript获取变量文本_Javascript_Php - Fatal编程技术网

php-从Javascript获取变量文本

php-从Javascript获取变量文本,javascript,php,Javascript,Php,我正在使用simple\u html\u dom刮取一些网页,我需要帮助。以下是我的Javascript: <script type="text/javascript"> var session = ""; var order = "1"; var status = ""; var json_product = [{bla bla bla...}]; </script> 我怎样才能得到它 我正在努力: $html->find('va

我正在使用
simple\u html\u dom
刮取一些网页,我需要帮助。以下是我的Javascript:

<script type="text/javascript">
    var session = "";
    var order = "1";
    var status = "";
    var json_product = [{bla bla bla...}];
</script>
我怎样才能得到它

我正在努力:

$html->find('var', 2);
我刚刚得到一个500错误,因为我认为find使用find字符串

我正在使用[HTML解析器]来抓取一些网页

但是您想要的值是javascript(嵌入在HTML中)

虽然可以使用DOM解析器检索整个javascript块,但这是它所能提供的最大分辨率

$script=$html->find('script') . ''; // not tested - YMMV
PHP没有Javascript解析器。如果您可以确定JSON将始终被分配给“JSON_产品”,并且没有进一步的javascript代码,那么您可以

$srch='json_product =';
$start=strpos($script, $srch);
$json=substr($script, $start+strlen($srch)+1);
$data=json_decode($json);
……但这离一个稳健的解决方案还有很长的路要走

我刚刚得到一个500错误,因为我认为find使用find字符串


这不会导致“500错误”

这是非常不可读的。请阅读您可以阅读的部分的哪里?对不起,我只是在这里乞讨。根据你发布的代码
var json\u produk
有价值。我不知道你需要什么格式。在你的代码上加新行,这样人们就可以看到它。正确格式化。谢谢@Leopold Joy先生谢谢我的问题解决了@symcbean先生,我也使用substr和STRPO,大约500个错误是的,我收到了500个错误,HTTP错误500
$srch='json_product =';
$start=strpos($script, $srch);
$json=substr($script, $start+strlen($srch)+1);
$data=json_decode($json);