[英]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.