Format d'un nombre (Décimales) - PHP - Programmation
Marsh Posté le 05-03-2004 à 11:25:05
sprintf plutot
http://fr2.php.net/manual/fr/function.sprintf.php
Marsh Posté le 05-03-2004 à 12:02:02
si j'utilise round()
round($val,???)
je met quoi comme argument2 pour mon cas, parce que $val je ne le connais pas ca peut être 12 1.55 ou bien 7.546116 et ce que je veux c'est max 2 decimales et aucune lorsque c'est une valeur entière et une seule lorsque $val est de type 1.70 -> 1.7
Marsh Posté le 05-03-2004 à 12:11:49
Cette fonction me paraît être plus appropriée
<?
function cutzero($value) {
return preg_replace("/(\.\d+?)0+$/", "$1", $value)*1;
}
?>
Some examples:
<?
cutzero("4.7600" ); // returns 4.76
cutzero("4.7604" ) // returns 4.7604
cutzero("4.7000" ); // returns 4.7
cutzero("4.0000" ); // returns 4
?>
Marsh Posté le 05-03-2004 à 12:19:18
oui sauf que ça t'arrondit pas tes nombres à deux chiffres après la virgule.
Donc il faut que tu fasses un truc dans le genre:
Code :
|
Marsh Posté le 05-03-2004 à 19:04:05
Tu multiplies par 100, tu tronques le superflu, tu divises par 100, tu affiches le resultat.
Comme ca, tu n'as que 2 chiffres apres la virgules et non arrondi.
Marsh Posté le 06-03-2004 à 00:11:37
Moi j'aurais fait une fonction bien crasseuse avec une boucle qui récupere le dernier chiffre du nombre, qui le vire si c'est un zero et qui continue jusqu'a ce que le dernier ne soit plus un zero
Je suis assez faignant sur les regex
Marsh Posté le 05-03-2004 à 10:13:23
Bonjour,
Après plusieurs calculs je voudrais afficher un nombre avec 2 décimales au max et si c'est un entier ou un réel avec une décimale n'afficher que ce qui est utile (pas de 0).
ex:
0,00 -> 0
1,30 -> 1,3
1,68 -> 1,68
1,444-> 1,44
1,449-> 1,44
Sinon au lieu de 0 après le calcul suivant 5.55+5.55-11.1 j'ai -1.7763568394003E-015!!! et ca je ne comprends pas.