[英]PHP - count li elements inside ul
我正在寻找一种方法来计算php(而非js)中ul内部的动态li元素。
例如:
<ul>
<li> lorem </li>
<li> ipsum </li>
<li> dolor </li>
<li> sit </li>
</ul>
会给我返回数字4 。 (我太傻了,无法在此处使用适当的代码吗?)
有一些方法可以在php中完成吗?
提前致谢!
编辑:
标记是由cms系统生成的,计数应放在模板文件内列表的前面。
您可以对该字符串的<li>
(或-li-
)执行非常简单的Substring Count ,它将返回项目数。
编辑:
$count = substr_count($html,'<li>'); //where $html holds your piece of HTML.
假设您没有输出此HTML(否则,计算元素数量应该是微不足道的),则可以使用PHP的DOMDocument 。
$dom = new DOMDocument;
$dom->loadHTML($str);
foreach($dom->getElementsByTagName('ul') as $ul) {
$count = $ul->getElementsByTagName('li')->length;
var_dump($count);
}
键盘 。
此代码将计算每个ul
元素中li
元素的数量。 如果您不关心单个ul
元素,则只需使用$dom->getElementsByTagName('li')->length
。
您的答案在于DOMDocument 。
例如:
$dom = new DOMDocument();
$dom -> loadHTML("<ul><li></li><li></li></ul>");
$li = $dom->getElementsByTagName("li");
foreach ($li as $li_c){
$i++;
}
echo $i;
使用PHP的DOM库,或查找简单DOM分析器。 它包含对HTML的搜索
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.