它只能检测到第一个条件,否则无论如何都无法正常工作。 xpath是正确的。如果我没有循环它,它将工作。我在这里做错了什么?
$pricediscount = "";
$chinesename ="";
if (empty($pricediscount)){
$pricediscount = (@$xpath->query("//*[@id='J_PromoPrice']/div/strong/text()")->item(0)->nodeValue);
}elseif(empty($pricediscount)){
$pricediscount = (@$xpath->query("//*[@id='J_StrPrice']/em[2]")->item(0)->nodeValue);
}elseif(empty($pricediscount)){
$pricediscount = (@$xpath->query("//*[@id='J_PromoBox']/strong")->item(0)->nodeValue);
}elseif(empty($pricediscount)){
$pricediscount = (@$xpath->query("//*[@id='J_StrPrice']")->item(0)->nodeValue);
}else{
$pricediscount = "NA";
}
答案 0 :(得分:2)
您只运行第一个if
语句,因为它始终为true,因此不会评估else
块。尝试将elseif
和else
语句更改为if
。