我试图回应一个数组作为PHP的价格,如果价格是例如2.55英镑是2.55英镑,如果它是2.5英镑是2.5英镑,我怎么能得到它添加最后的零点?。
我的Mysql DB字段当前设置为十进制(10,2) 非常感谢 :-) 圣诞快乐!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~#
<?php
$query = mysql_query("SELECT * FROM hqfjt_chronoforms_data_dashboard WHERE cf_id = '1'") or die(mysql_error());
$oilprice = mysql_fetch_object($query);
$oilpricegasoil = $oilprice->oilpricegasoil;
$oilpricederv = $oilprice->oilpricederv;
$oilpricekero = $oilprice->oilpricekero;
?>
<tr><?php $gasoilprice = $oilpricegasoil + $row->gasoilmargin;
$dervprice = $oilpricederv + $row->dervmargin;
$keroprice = $oilpricekero + $row->keromargin;?>
<td><?php echo $row->leadname; ?></td>
<td><?php echo $row->businessname; ?></td>
<td><?php echo $row->postcode; ?></td>
<td><?php echo $row->gasoiluser; ?></td>
<td><?php echo $row->dervuser; ?></td>
<td><?php echo $row->kerouser; ?></td>
<td><?php echo '£'; echo $gasoilprice; ?></td>
<td><?php echo '£'; echo $dervprice; ?></td>
<td><?php echo '£'; echo $keroprice; ?></td>
答案 0 :(得分:1)
<?php
$test = 2.50;
echo "£", number_format($test, 2); // 2 decimal places
?>
£2.50
要小心,因为这会将.005
四舍五入到下一个最高分,这并不总是你想要的:
如果您需要不同的舍入,请尝试使用:
您也可以尝试使用the money_format
function,但您需要确保正确设置了您的语言区域才能使其正常工作。
money_format('%.2n', $number); // 2 decimal points, with national currency symbol
无论哪种方式,我建议您将转换推送到一个函数中,这样您就可以在整个代码中重复使用它,而不必重复编号格式:
function toCurrency($number)
{
return '£' . number_format($number, 2);
}
// ...
<td><?php echo toCurrency($gasoilprice); ?></td>
<td><?php echo toCurrency($dervprice); ?></td>
<td><?php echo toCurrency($keroprice); ?></td>