Page 1 sur 1

Limiter un nombre de caractère

Posté : 26 avr. 2006, 20:36
par Sinhji
Salut, voilà j'ai fais une fonctions pour calculer des pourcentages, mais la plus part du temps, je me retrouve avec des nombres de ce style "23.333333337" donc je me demandais si il existait une fonction permetant de limiter le nombre de caractères après la virgule ou tout simplement limiter le nombre de chiffre

Merci de vos réponses

Posté : 26 avr. 2006, 20:57
par charabia
Un petit round() devrait faire l'affaire je pense.

Code : Tout sélectionner

$a = 3.435425435345; echo round($a,2);
te retournera 2.43

Posté : 26 avr. 2006, 21:11
par albat
:!: Attention !

La fonction round() modifie la valeur de la variable.

Pour ne modifier que l'affichage en conservant la valeur exacte,
mieux vaut utiliser la fonction number_format(). ;)

Posté : 26 avr. 2006, 21:18
par charabia
+1 ;)

Posté : 26 avr. 2006, 21:27
par Sinhji
number_format(), c'est ce qui me fallait merci de m'avoir répondu si vite :lol:

Posté : 26 avr. 2006, 21:28
par albat
Quoique...
Charabia, dans son exemple, a pris la saine précaution
de n'utiliser la fonction round() que pour l'affichage.
La valeur de la variable $a n'est donc pas modifiée.

Mais mieux vaut tout de même utiliser les fonctions
pour le but dans lequel elles ont été conçues, non ?
- round() renvoie la valeur arrondie de $a
- number_format() change l'affichage de $a

Au fait...
$a = 3.435425435345;
echo round($a,2);
te retournera 2.43
T'es sûr ?... ;)

Posté : 26 avr. 2006, 21:33
par charabia
Au fait...
$a = 3.435425435345;
echo round($a,2);
te retournera 2.43
T'es sûr ?... ;)
Je l'ai toujours dit bien haut et bien fort...ne jamais répondre le soir...il vaut mieux dormir :langue:

Autant pour moi...c'est 3.43 qu'il fallait lire :)

Posté : 27 avr. 2006, 13:59
par Invité
3.44 ?

8)

Posté : 27 avr. 2006, 14:09
par zeus
oui, parce que l'arrondie de 3.4354 et 3.44.
0.0054 arrondi donne 0.01 ;)

Posté : 27 avr. 2006, 15:04
par Ryle
Oui mais on peut pas lui en vouloir pour ça, son 2nd message était posté encore plus tard que le premier, alors forcément... ;)

Posté : 27 avr. 2006, 15:08
par albat
Il est à peine plus de 15.00, là.
On prend le risque de lui demander maintenant ou il est déjà trop tard ? :-* :langue: