Aroundi avec php

Fermé
totdmm Messages postés 55 Date d'inscription mercredi 22 janvier 2014 Statut Membre Dernière intervention 23 avril 2019 - 19 nov. 2015 à 10:28
totdmm Messages postés 55 Date d'inscription mercredi 22 janvier 2014 Statut Membre Dernière intervention 23 avril 2019 - 19 nov. 2015 à 11:54
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 lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 525
19 nov. 2015 à 11:42
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 lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 525
19 nov. 2015 à 10:32
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 mercredi 22 janvier 2014 Statut Membre Dernière intervention 23 avril 2019
19 nov. 2015 à 10:46
merci poure ta reponce mais sa marche pas
0
totdmm Messages postés 55 Date d'inscription mercredi 22 janvier 2014 Statut Membre Dernière intervention 23 avril 2019
19 nov. 2015 à 10:50
$s1 = 2557.845;
$s2 = round($s1, 2);
echo"$s2";
//2557.84
0
totdmm Messages postés 55 Date d'inscription mercredi 22 janvier 2014 Statut Membre Dernière intervention 23 avril 2019
19 nov. 2015 à 10:50
je veux que //2557.85
0
totdmm Messages postés 55 Date d'inscription mercredi 22 janvier 2014 Statut Membre Dernière intervention 23 avril 2019
19 nov. 2015 à 11:23
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 samedi 25 octobre 2014 Statut Membre Dernière intervention 22 février 2020 2 002
19 nov. 2015 à 10:33
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 mercredi 22 janvier 2014 Statut Membre Dernière intervention 23 avril 2019
19 nov. 2015 à 10:48
merci mais non sa marche pas
0
DelNC Messages postés 2234 Date d'inscription samedi 25 octobre 2014 Statut Membre Dernière intervention 22 février 2020 2 002
Modifié par DelNC le 19/11/2015 à 10:59
Je ne suis pas certaine mais essaye ceci

sprintf("%.2f",2557.845);
0
totdmm Messages postés 55 Date d'inscription mercredi 22 janvier 2014 Statut Membre Dernière intervention 23 avril 2019
19 nov. 2015 à 11:24
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 38347 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 décembre 2024 4 719
19 nov. 2015 à 11:29
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 mercredi 22 janvier 2014 Statut Membre Dernière intervention 23 avril 2019
19 nov. 2015 à 11:37
merci beaucoup normalement ça marche très bien merci mon amis
0
jordane45 Messages postés 38347 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 décembre 2024 4 719
19 nov. 2015 à 11:38
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 mercredi 22 janvier 2014 Statut Membre Dernière intervention 23 avril 2019
19 nov. 2015 à 11:54
ok mon amis merci merci
0