Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.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 如何在两者之间获取html代码<;p>;标签?_Php_Html_Regex_Tags - Fatal编程技术网

Php 如何在两者之间获取html代码<;p>;标签?

Php 如何在两者之间获取html代码<;p>;标签?,php,html,regex,tags,Php,Html,Regex,Tags,我想在2标记之间得到一些html代码,我有2个正则表达式 1-$LinkGrabber=“item1:满(.*)” 2-$linkGrabber=“项目2完整(.*)” 第一个代码很好,但第二个不行。你能告诉我这些代码之间有什么不同吗?永远不要使用正则表达式来解析HTML标记。使用DOM解析器 $dom = new DOMDocument; @$dom->loadHTML($html); //<---- Pass your HTML source here forea

我想在2标记之间得到一些html代码,我有2个正则表达式

1-
$LinkGrabber=“item1:满(.*)”

2-
$linkGrabber=“项目2完整(.*)”


第一个代码很好,但第二个不行。你能告诉我这些代码之间有什么不同吗?

永远不要使用正则表达式来解析HTML标记。使用DOM解析器

$dom = new DOMDocument;
    @$dom->loadHTML($html); //<---- Pass your HTML source here
    foreach ($dom->getElementsByTagName('p') as $tag) {
            echo $tag->nodeValue; //"prints" the content of the p tag.
           }
$dom=新的DOMDocument;
@$dom->loadHTML($html)//getElementsByTagName('p')作为$tag){
echo$tag->nodeValue;//“打印”p标记的内容。
}

第一个是查找包含
item1:
的HTML标记,而第二个是查找
item2

我想说,它们都工作正常,但名称不同。在测试第二个变量时,请确保使用$linkGrabber而不是第一个示例中的$linkGrabber。

是否因为使用了相同的变量名
$linkGrabber?…第一个在
标记的末尾有一个
?您如何在解决方案中使用此功能?对于仅仅从
元素获取数据来说,这似乎过于复杂了。