我有这个HTML:
<div class="price" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
<small class="old-price">Stara cena: 1.890 RSD</small>
<span>Ušteda: <strong>1.000 RSD</strong></span>
<h5>890 <em>RSD</em>
<div class="tooltip"><p>Cene sa popustom uz gotovinsko plaćanje za online porudžbine</p></div>
</h5>
<span style="display:none" itemprop="priceCurrency" content="RSD"></span>
<span itemprop="price" content="890.00"></span>
</div>
我正在从这样的标签中收集价格:
foreach($html->find('span[itemprop=price]') as $element) {
$niz['price'][] = $element->content;
}
现在我需要从小标签中收集文本(如果它不存在,那么我需要在数组中使用空字符串):<small class="old-price">Stara cena: 1.890 RSD</small>
所以我需要这样的东西:
if($html->find('small[class=old-price]',0))
{
$niz['oldprice'][] = $element->innertext;
}else{
$niz['oldprice'][] = '';
}
问题是我只从数组中的class = old-price获得元素而不是单个空字符串。
任何建议都将受到赞赏。
答案 0 :(得分:1)
您好,请使用代码
foreach($html->find('small[class=old-price]') as $element) {
if($element->plaintext)
{
$niz['oldprice'][] = $element->plaintext;
}else{
$niz['oldprice'][] = '';
}
}