Page 1 sur 1

additionner des décimales...

Posté : 19 mai 2009, 15:40
par tomtom-over76
Bonjour,
je souhaite faire une addition toute simple mais je suis confronté à un probleme de débutant.
lorsque j'additionne mes variables mon résultat ne prend pas en compte les décimales
$a='0,00';
$b='7,75';
$c='2,2';
echo $total=$a+$b+$c;
si je remplace les virgules par des points ça fonctionne... mais je souhaite afficher des virgules

Merci

Posté : 19 mai 2009, 16:40
par stopher
Salut ,

j'ai envie de te dire , passe tes variables à la moulinette pour remplacer les "," possible avant de faire tes opérations ...

C'est tout ce que j'ai à te proposer pour le moment .. :?

Il doit y avoir de jouer avec setlocale() , mais celà peut engendrer d'autres changements ... donc ...

Ch.

Posté : 19 mai 2009, 17:10
par dunbar
Salut,

Comme ceci peut-être :?: :wink:
<?php
$a= 0.00 ;
$b= 7.75 ;
$c= 2.2 ;
//echo $total=$a+$b+$c;



$numero = $a + $b + $c;
$aff_numero = number_format($numero, 2, ',', '');
echo $aff_numero;
?>
Résultat = 9,95

Posté : 21 mai 2009, 12:17
par Ryle
Je confirme la proposition de dunbar et pour essayer de détailler un peu plus les raisons du pourquoi :

Lorsque tu veux faire des calculs, il faut utiliser des nombres, et non pas des chaines (tout le monde sait pourtant qu'on ne peut pas aditionner des choux et des carottes.. sauf dans un pot-au-feu, mais ca c'est une autre histoire :)). Et le séparateur de décimales quand on manipule des nombres en php, c'est le point.

Qu'ensuite, à l'affichage tu préfères présenter des virgules est une autre chose, et effectivement, la fonction number_format() te permet de formatter un nombre pour l'affichage avec séparateur de milliers, de décimales, nombre de chiffre après la virgule...

Tu pourras ainsi faire tous tes calculs sans le moindre problème et présenter cependant des valeurs formater (des chaines donc) à l'utilisateur :)