if else语句和else语句

时间:2017-12-14 01:58:19

标签: php

PHP的新内容 这个陈述有什么错误吗?
我只想显示价格= 0然后免费,
 否则显示正常价格,
否则,如果没有折扣价,则无法维持价格,
否则有折扣价格然后显示折扣价格。

<?php
    if($value->price_value == 0 || '' ){
        echo "Free";
    } else {
        echo $formatted_price;
    } else if(empty($discount_price)){
        echo '';
    }else{
        echo $discount_price;
    }
?> 

$discount_price来自:

    $value->price_value * $value->discount_percent_amount ;
    echo $discount_price ;

2 个答案:

答案 0 :(得分:0)

不确定你要做什么。但是这里是基于你上面写的

的正确语法
<?php
        if($value->price_value == 0 || $value->price_value == '' ){
            echo "Free";
        } else {
            echo $formatted_price;
        } 
        if(empty($discount_price)){
            echo '';
        }else{
            echo $discount_price;
        }
 ?> 

答案 1 :(得分:0)

您可能想尝试一下:

<?php
    // assuming $value->price_value is a numeric

    if($value->price_value > 0){ # check first if price greater than 0

        if ($discount_percent_amount > 0) { # discounted percent amount is greater than 0
            // calculate the discounted price
            echo $value->price_value * $value->discount_percent_amount ;
        }else{ # display product price
            echo $value->price_value;
        }
    }else{ # free product
        echo "Free";
    }
?>

注意:在继续使用条件语句之前,最好使用php中的is_numeric()函数过滤所有使用过的变量。