J'ai une entrée de forme pour obtenir un nombre (c'est un prix). Cela peut être un nombre décimal comme 102,5. Je dois le comparer avec une autre décimale par exemple 102,6. Comment pouvez-vous gérer cela? Je ne veux pas utiliser round() parce que je peux comparer exactement.Comparer des décimales en PHP
Répondre
Vous pouvez comparer la absolute différence (c.-à-numérique) à un "epsilon" (votre "tolérance"):
$epsilon = 0.01;
$diff = abs(102.5 - 102.6); // .1
if ($diff <= $epsilon) {
// The numbers are equal
} else {
// The numbers are not equal enough!
}
Et, un peu de lecture: "What Every Computer Scientist Should Know About Floating-Point Arithmetic" et " Comparing floating point numbers ".
En outre, vous trouverez peut-être le suivi SO des questions intéressantes (et réponses!):
- Most effective way for float and double comparison
- What's wrong with using == to compare floats in Java?
C'est vrai: Vous obtenez décider ce qui rend les deux nombres égaux. Il pourrait être 0.1
(faire 1.1
égal à 1.0
), 0.01
(1.02
~ 1.03
), etc.
juste le rendre décimal de ce format
$kinda_decimal = "102,5";
$kinda_decimal = floatval(str_replace(",",".",$kinda_decimal));
et comparer
okay! le problème est maintenant quand je choisis le (point) il n'est pas pris comme un coma décimal! J'espère que tu comprends (je suis français) – Mamadou
- 1. Comment ajouter des nombres après décimales en utilisant php
- 2. comparer chaîne en php tableau
- 3. convertir des parenthèses imbriquées en décimales
- 4. Comment optimiser l'arrondi des décimales en C#
- 5. Comment comparer des données en session avec PHP?
- 6. Comment mieux comparer à 0 en PHP?
- 7. Comparer les valeurs multiples en PHP
- 8. Comment comparer deux fois en PHP
- 9. php date comparer
- 10. Comparer des listes en Lisp
- 11. Comparer des dates en Javascript
- 12. php add thousandseperator sans ajuster les décimales
- 13. PHP comparer doute
- 14. PHP - Comparer le mot éclaté avec mysql varchar en PHP
- 15. Limite des décimales dans DBGrid
- 16. réponse JSON contient des caractères représentés en décimales
- 17. Minutes décimales
- 18. Comparer des images en C# .NET
- 19. en train de comparer avec des dates?
- 20. Comparer des éléments de tableau en C++
- 21. Faire face à la devise dans PHP - décimales et nombre_format()
- 22. Algorithme de détection des décimales répétitives?
- 23. arrondir des valeurs décimales jusqu'à 0,01?
- 24. Fonction diviser la chaîne en décimales?
- 25. décimales d'une plage donnée en sql
- 26. Comment puis-je comparer les versions de MySQL en PHP?
- 27. Comparer tableau associatif avec des valeurs de tableau standard PHP
- 28. Pourquoi lancer et comparer en PHP plus vite que is_ *?
- 29. Format des valeurs décimales sur un BlackBerry
- 30. Comparer MySQL "Time" Champ avec chaîne en PHP
tx i tester et je serai de retour – Mamadou
tx! ne fonctionne pas encore – Mamadou
@Mamadou Vos chiffres sont-ils valides? Que signifie 'var_dump()'? – jensgram