0

它只能检测到第一个条件,if else 的任何东西都行不通。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";
    }
4

1 回答 1

2

您只运行第一个if语句,因为它始终为真,因此else不会评估块。尝试将elseifandelse语句更改为if.

于 2013-10-13T07:22:12.937 回答