【发布时间】:2021-02-25 20:14:26
【问题描述】:
我正在编写一个脚本来从提交的(外部)URL 中提取元数据。我发现了一篇非常有用的帖子,它让我完成了 90% 的工作,但是它假设只有一个相关的脚本标签,我需要解析具有多个脚本标签的页面。
如何修改下面的语句,以便将所有匹配的 json 脚本标签组合成一个 json 块?
$xp = new domxpath($d);
$jsonScripts = $xp->query( '//script[@type="application/ld+json"]' );
$json = trim( $jsonScripts->item(0)->nodeValue );
// decode the JSON string we find into a associative array
$data = json_decode( $json, true );
【问题讨论】:
-
您可以只使用
foreach而不是$jsonScripts。