具有特定 ID 的 div 的 PHP Strip_tags?

标签 php

有谁知道修改后的 strip_tags 函数是否存在,您可以在其中指定要剥离的标签的 ID,并且可能还指定删除标签中的所有数据。举个例子:

<div id="one">
  <div id="two">
    bla bla bla
  </div>
</div>

Running:


new_strip_tags($data, 'two', true);

必须返回:

<div id="one">
</div>

那里有这样的东西吗?

最佳答案

您可以使用 DOMDocumentDOMXPath为此。

<?php
$html = '<html><head><title>...</title></head><body>
  <div id="one">
    <div id="two">
      bla bla bla
    </div>
  </div>
</body></html>';

$doc = new DOMDocument;
$doc->preserveWhiteSpace = false;
$doc->loadhtml($html);

$xpath = new DOMXPath($doc);

$ns = $xpath->query('//div[@id="two"]');
// there can be only one... but anyway
foreach($ns as $node) {
  $node->parentNode->removeChild($node);
}
echo $doc->savehtml();

关于具有特定 ID 的 div 的 PHP Strip_tags?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1392346/

相关文章:

php - 通过 facebook 图形 API 检索 facebook 用户的邮政编码

php - 完全理解 PDO ATTR_PERSISTENT

php 运算符 ==(有点相等)和整数 0

php - 从 codeigniter 中的文件夹加载模型

javascript - 单击用户图像时显示wordpress用户描述

php - WHERE 子句中的 MAX()

php - 比较文本框中的中间值

php - 如何在不创建 MySQL 过程的情况下执行事务

php - SQL/PHP : SELECT only one row per item

php - 在 PHP 中使用 Flysystem 从 S3 下载文件