В моей базе данных я установил часть своего поля в decimal
поэтому я могу вводить числа с десятичными точками.
и в моей базе данных, даже я не вводить в поле ввода всегда есть значение 0.0
,
в моем случае я не хочу 0.0
для отображения на моей странице, поэтому я пытаюсь это:
<?php
if(!empty($current_orders["order_item"])){
echo "<p>Credit Amount: <span class=\"colorRed\">Php ". $current_orders["order_item"]."</span></p>";
} else {
echo null;
}
?>
и это не работает …
не пустой означает, что эти переменные имеют значение. пусто означает, что эти переменные являются нулем И 0.0 это значение. Итак, измените свой код на это:
<?php if($current_orders["order_item"] > 0.0){
echo "<p>Credit Amount: <span class=\"colorRed\">Php ". $current_orders["order_item"] . "</span></p>";
} else {
echo null;
}
?>
Ты можешь использовать bccomp функция в php для сравнения значений с плавающей точкой.
Возвращает 0, если два операнда равны, 1, если left_operand больше, чем right_operand, -1 в противном случае
<?php
if(bccomp($current_orders["order_item"],0.0,1) == 0){
echo "<p>Credit Amount: <span class=\"colorRed\">Php ". $current_orders["order_item"]."</span></p>";
} else {
echo null;
}
?>
Вы можете избавиться от этого с помощью следующего кода
$amount = 0.0;
if((!empty($amount)) && $amount>0){
echo "<p>Credit Amount: <span class=\"colorRed\">Php ". $amount."</span></p>";
} else {
echo null;
}
Если вы хотите отобразить значения -ve, просто измените условие $ сумма> 0 на $ сумму! = 0, иначе оно не будет отображать th -ve значения