0 レビュー
3 回答
PHPで小数を比較する
数値を取得するためのフォーム入力があります(これは価格です)。 102,5のような小数にすることができます。例102,6では、他の小数と比較する必要があります。 これをどのように処理できますか? round()を使用したくないので、正確に比較できます。
わからない
0
レビュー
答え :
解決策:
絶対(つまり数値)の違いを「イプシロン」(「許容範囲」 1 )と比較できます。
$epsilon = 0.01;
$diff = abs(102.5 - 102.6); // .1
if ($diff <= $epsilon) {
// The numbers are equal
} else {
// The numbers are not equal enough!
}
そして、「すべてのコンピューター科学者が浮動小数点演算について知っておくべきこと」と「浮動小数点数の比較」を少し読んでください。 a> "。
また、次のSOの質問(および回答!)がおもしろいと思うかもしれません:
- フロートと二重比較の最も効果的な方法
- Javaでフロートを比較するために==を使用することの何が問題になっていますか?
1 そうです: 2つの数値を等しくする理由を決めることができます。
0.1
(1.1
を1.0
と等しくする)、0.01
(1.0 2
〜1.0 3
)など
わからない
0
レビュー
答え :
解決策:
この形式から10進数にするだけです
$kinda_decimal = "102,5";
$kinda_decimal = floatval(str_replace(",",".",$kinda_decimal));
比較してください
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。