PHP if语句或不起作用

时间:2016-07-12 14:14:33

标签: php

下午所有,我正在尝试优化和减少我的代码。我无法理解以下内容:

此代码......

$asset_array = array('steel', 'copper', 'gold', 'silver');
foreach ($asset_array as $asset){
    $symbol = "";
    if ($asset == "gold"){
        $symbol = "£";  
    }
    if ($asset == "silver"){
        $symbol = "£";  
    }
    echo $asset . $symbol . "<br />";
}

回应这个...

steel
copper
gold£
silver£

但是这段代码......

$asset_array = array('steel', 'copper', 'gold', 'silver');
foreach ($asset_array as $asset){
    $symbol = "";
    if ($asset == "gold" || "silver"){
        $symbol = "£";  
    }
    echo $asset . $symbol . "<br />";
}

回应这个...

steel£
copper£
gold£
silver£

请有人解释发生了什么事吗?第一个结果是我实际想要实现的目标,我只是想用更少的代码来实现它。

非常感谢

1 个答案:

答案 0 :(得分:0)

您需要在两侧指定变量:

if ($asset == "gold" || $asset ==  "silver"){

否则,它显示为&#34;如果资产等于silver,或者此字符串总是为真,因为它不是0 / false / null&#34;