Aroundi avec php

totdmm Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -  
totdmm Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -
salut mes amis voila mon probleme j ais un chiffre
$ss=28420.5*9/100;
$ss=2557.845
ok
mais mois je veux que
$ss= 2557.85
avec la roundi du php j'ais essayé plusieur solution mais rien marché
merci pour votre aide
A voir également:

4 réponses

Pitet Messages postés 2826 Date d'inscription   Statut Membre Dernière intervention   527
 
Effectivement je n'avais pas fait attention à l'arrondi supérieur.

Dans ce cas il faut utiliser le 3e paramètre de round :
$s1 = 2557.845;
$s2 = round($s1, 2, PHP_ROUND_HALF_UP);
var_dump($s2); // 2557.85
1
Pitet Messages postés 2826 Date d'inscription   Statut Membre Dernière intervention   527
 
Salut,

Tout simplement :
$s1 = 2557.845;
$s2 = round($s1, 2);
var_dump($s2); // 2557.85


https://www.php.net/manual/fr/function.round.php

Bonne journée
0
totdmm Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
merci poure ta reponce mais sa marche pas
0
totdmm Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
$s1 = 2557.845;
$s2 = round($s1, 2);
echo"$s2";
//2557.84
0
totdmm Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
je veux que //2557.85
0
totdmm Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
regarder avec mois j ais essayé
echo sprintf("%0.2f", 2557.845);
2557.84
mais
echo sprintf("%0.2f", 2557.835);
2557.84
echo sprintf("%0.2f", 2557.825);
2557.82
echo sprintf("%0.2f", 2557.815);
2557.82
pkoi avec 2 et 4 ne fonction pas
0
DelNC Messages postés 2234 Date d'inscription   Statut Membre Dernière intervention   2 004
 
Bonjour,

je crois que ceci devrait t'aider

$nss = number_format($nbr,2);

Dis moi si c'est bon pour toi.
@+
0
totdmm Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
merci mais non sa marche pas
0
DelNC Messages postés 2234 Date d'inscription   Statut Membre Dernière intervention   2 004
 
Je ne suis pas certaine mais essaye ceci

sprintf("%.2f",2557.845);
0
totdmm Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
regarder avec mois j ais essayé
echo sprintf("%0.2f", 2557.845);
2557.84
mais
echo sprintf("%0.2f", 2557.835);
2557.84
echo sprintf("%0.2f", 2557.825);
2557.82
echo sprintf("%0.2f", 2557.815);
2557.82
pkoi avec 2 et 4 ne fonction pas
s
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Regarde ici :
https://www.php.net/manual/fr/function.round.php#98704

function mround($number, $precision=0) {
   
    $precision = ($precision == 0 ? 1 : $precision);   
    $pow = pow(10, $precision);
   
    $ceil = ceil($number * $pow)/$pow;
    $floor = floor($number * $pow)/$pow;
   
    $pow = pow(10, $precision+1);
   
    $diffCeil     = $pow*($ceil-$number);
    $diffFloor     = $pow*($number-$floor)+($number < 0 ? -1 : 1);
   
    if($diffCeil >= $diffFloor) return $floor;
    else return $ceil;
}

echo mround(4.725, 2); // Donne 4.73 

0
totdmm Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
merci beaucoup normalement ça marche très bien merci mon amis
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Si la question est résolue..
Merci de ne pas oublier de clôturer le sujet
(en cliquant sur le lien "Marquer comme résolu" qui se trouve sous le titre de la question)

Cordialement,
Jordane
0
totdmm Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
ok mon amis merci merci
0