Php 如何使用curl仅打印一个标记

Php 如何使用curl仅打印一个标记,php,curl,domdocument,Php,Curl,Domdocument,我的网页上有2个或3个标签,但我只想打印第一个和第二个标签 我怎么能做到 这是我的密码 <?php $url = "http://www.web.org/dorama/1401143633/momikeshite-fuyu--wagaya-no-mondai-nakatta-koto-ni"; $ch = curl_init(); $timeout = 5; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETU

我的网页上有2个或3个标签,但我只想打印第一个和第二个标签

我怎么能做到

这是我的密码

<?php
$url = "http://www.web.org/dorama/1401143633/momikeshite-fuyu--wagaya-no-mondai-nakatta-koto-ni";
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$html = curl_exec($ch);
curl_close($ch);
$dom = new DOMDocument();
@$dom->loadHTML($html);

foreach($dom->getElementsByTagName('p') as $link) {
        echo $dom->saveXML( $link);
}
?>
当您使用getElementsByTagName时,您会得到一个节点列表DOMNodeList,您当前使用它对所有节点进行迭代。如果您只想要第一个,您可以使用item来获取您想要的特定项。在本例中为0

echo $dom->saveXML( $dom->getElementsByTagName('p')->item(0) );

对不起,我正在编辑我的问题。我想先显示p,然后显示p。原因p first是图像p second是Synopsis如果要显示第二个,请将0替换为1。是-因此,您可以将上面的行用于第一个,然后使用同一行进行另一次回显,但将0替换为1作为主要内容。您可以将preg_替换为saveXML的结果,但不能替换为任何DOM元素。您可以使用类似于XPath的DOM来查找特定节点并删除它们。