【发布时间】:2020-06-12 13:37:16
【问题描述】:
我正在尝试使用 PHP 解析 HTML 列表,然后读取列表的内容(例如儿童和年轻人、居民、专业人士)和标签,在末尾附加一个“/”列表中的每一位文本(最后一项除外),然后输出,而不编辑任何周围的 HTML 标记。
目前我已经在列表中读取并附加了“/”,但我在此过程中删除了周围的标签,是否有人对执行此操作的方法或我应该使用的任何功能有任何建议?谢谢
<ol class="breadcrumb">
<li class="inline odd first" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb"><a href="https://my.northtyneside.gov.uk/category/75/residents" itemprop="url"><span itemprop="title">Residents</span></a></li>
<li class="inline even" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb"><a href="https://my.northtyneside.gov.uk/category/175/children-and-young-people" itemprop="url"><span itemprop="title">Children and young people</span></a></li>
<li class="inline odd last" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb"><span itemprop="title">Professionals</span></li>
</ol>
<?php
function injectSlashes($breadcrumb){
$doc = new DOMDocument();
$doc->loadHTML($breadcrumb);
$liList = $doc->getElementsByTagName('li');
$liValues = array();
foreach ($liList as $li) {
$liValues[] = $li->nodeValue;
}
$correctBreadcrumb = implode("<span aria-hidden=\"true\">/</span>",$liValues);
return $correctBreadcrumb;
}
?>
【问题讨论】:
-
你想要
<li>项目中的所有标签吗? -
我希望所有的标签都被返回是的(基本上所有的 html 并且只在文本项的末尾添加一个'/',除了最后一个)