我知道我可以使用file_get_contents方法获取页面内容, 但是有没有办法获得 script 标签之间的所有内容? 也就是说,该页面构建了一个我希望得到的对象:
<script src="js.js">
dataLayer = [{dest":"Lithuania","type" : "small", "code" : "4"}];
</script>
有什么方法可以用php或任何其他方法获取内容吗?
答案 0 :(得分:0)
您可以使用正则表达式获取内部的所有脚本标记和HTML文档。
这里只是一些用于检索所有脚本标记的php行:
$matches = array();
$pattern = '/<script[^>]*>(.*?)<\\/script>/ius';
$subject = file_get_contents('YOUR URL');
preg_match_all( $pattern, $subject , $matches );
此处 $ matches 是一个数组,其中包含与模式匹配的所有字符串。键0包含完整的模式匹配,键1仅包含():
之间的匹配组[
0 => [
0 => "<script>script content 1</script>",
1 => "<script>script content 2</script>",
...
],
1 => [
0 => "script content 1",
1 => "script content 2",
...
]
]
有关功能的一些细节:
我希望这有帮助:)