首页 > 解决方案 > 如何从 PHP 中提取标签值而不是标签代码?

问题描述

我需要获得第 4 个 H4 标记值 HTML 代码,如下所示:

                  <div class="col-md-6 mb-6 mb-md-3">
                    <h3 class="mb-3">testing 1</h5>
                    <h4 class="mb-0 abcd defg hikjk lmnop">Not needed this Value</h4>
                  </div>

                  <div class="col-md-6 mb-6 mb-md-3">
                    <h3 class="mb-3">testing 2 </h5>
                    <h4 class="mb-0 abcd defg hikjk lmnop">Not needed this Value</h4>
                  </div>

                  <div class="col-md-6 mb-6 mb-md-3">
                    <h3 class="mb-3">testing 3</h5>
                    <h4 class="mb-0 abcd defg hikjk lmnop">Not needed this Value</h4>
                  </div>

                  <div class="col-md-6 mb-6 mb-md-3">
                    <h3 class="mb-3">testing</h5>
                    <h4 class="mb-0 abcd defg hikjk lmnop">**Needed this Value only**</h4>
                  </div>

我真的很感激有人可以提供帮助。

下面我正在寻找:

从 CURL 请求中获取 HTML

比,

    $html = new simple_html_dom();
    $html->load($content);

$html->find('h4') as $h4)

$value = $h4->???????; --> 值应该是多少??

标签: php

解决方案


PHP 有一个内置的 DOM 解析器,您不需要第三方库即可进行简单的查找:

<?php

$input = '<div class="col-md-6 mb-6 mb-md-3">
    <h3 class="mb-3">testing 1</h5>
    <h4 class="mb-0 abcd defg hikjk lmnop">Not needed this Value</h4>
  </div>

  <div class="col-md-6 mb-6 mb-md-3">
    <h3 class="mb-3">testing 2 </h5>
    <h4 class="mb-0 abcd defg hikjk lmnop">Not needed this Value</h4>
  </div>

  <div class="col-md-6 mb-6 mb-md-3">
    <h3 class="mb-3">testing 3</h5>
    <h4 class="mb-0 abcd defg hikjk lmnop">Not needed this Value</h4>
  </div>

  <div class="col-md-6 mb-6 mb-md-3">
    <h3 class="mb-3">testing</h5>
    <h4 class="mb-0 abcd defg hikjk lmnop">**Needed this Value only**</h4>
  </div>';

$dom = new DOMDocument();
libxml_use_internal_errors(true);
$dom->loadHTML($input);
libxml_use_internal_errors(false);

var_dump($dom->getElementsByTagName('h4')[3]->nodeValue);

演示/参考


推荐阅读