【问题标题】:How to get array of inner div class names using php, dom document and xpath?如何使用 php、dom 文档和 xpath 获取内部 div 类名的数组?
【发布时间】:2021-02-18 17:33:48
【问题描述】:

我正在尝试找到一种方法,使用 php、dom 和 xpath 来返回一个数组,该数组包含已知指定 div 类中的 div 类名。例如,对于下面的 html div 类“title-wrapper”,我想要一个返回包含“title-divider”、“subtitle”的数组。谢谢

  <div class="title-wrapper">
    <h3>Shop By Product</h3>
    <div class="title-divider"></div>
    <div class="subtitle"></div>
  </div>
</div>

【问题讨论】:

    标签: php dom xpath


    【解决方案1】:

    尝试这样的事情(请注意,您的 html 中有一个额外的 &lt;div&gt;;固定在下面):

    $data = <<<DATA
    <div class="title-wrapper">
        <h3>Shop By Product</h3>    
        <div class="title-divider"></div>
        <div class="subtitle"></div>
     </div>
    DATA;
    $doc = new DOMDocument();
    $doc->loadHTML($data);
    $xpath = new DOMXpath($doc);
    $targets = $xpath->query(".//div[@class='title-wrapper']//div/@class");
    $classNames_array = array();
    foreach ($targets as $target) {
        $classNames_array[] = $target->textContent;
    }
    print_r(array_values($classNames_array));
    

    输出:

    Array
    (
        [0] => title-divider
        [1] => subtitle
    )
    

    【讨论】:

    • @TonyC 很高兴听到它对您有用!如果我们完成了,请不要忘记接受答案。
    猜你喜欢
    • 1970-01-01
    • 2021-03-03
    • 2016-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-23
    • 2015-07-20
    相关资源
    最近更新 更多