我有一個數據庫字段調用餘額。這是€10,000。我也有一個叫做7500歐元的領域。我想要的是當我的場地平衡大於我的場地限制時,然後迴應:「請在開始前付款。」;更高還是沒有PHP
我嘗試這樣做:
<?php
if ($row['balance'] > $row['limit']){
echo "Please, pay before start.";
}
?>
它不工作。也許是因爲數字中的逗號?我怎樣才能檢查這個?
我有一個數據庫字段調用餘額。這是€10,000。我也有一個叫做7500歐元的領域。我想要的是當我的場地平衡大於我的場地限制時,然後迴應:「請在開始前付款。」;更高還是沒有PHP
我嘗試這樣做:
<?php
if ($row['balance'] > $row['limit']){
echo "Please, pay before start.";
}
?>
它不工作。也許是因爲數字中的逗號?我怎樣才能檢查這個?
您需要解析數出來的貨幣價值,才能夠正確地對它們進行比較:
$balance = floatval(preg_replace('/[^\d\.]/', '', $row['balance']));
$limit = floatval(preg_replace('/[^\d\.]/', '', $row['limit']));
if ($balance > $limit) {
echo "Please, pay before start.";
}
這種想法是不好的,你應該嘗試小數/數字型的數據庫。您可以使用number_format或money_format來顯示您偏好的格式。那麼你可以很容易地檢查你的狀況
如果你將存儲過程作爲字符串與千位分隔符和貨幣符號,這是不好的做法 - 因爲你說的原因。將價格存儲爲數字,並將美化作爲渲染過程的一部分。 – halfer
哇!你用字符串存儲錢嗎? –
從不把貨幣存爲浮動貨幣,它們是不準確的。只作爲整數存儲。 – Atle