[RESOLU] Addition deux var formatée avec number_format

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Addition deux var formatée avec number_format

Re: [RESOLU] Addition deux var formatée avec number_format

par moogli » 21 juil. 2016, 10:56

Modération :
Puisque ta question est résolue, je l'indique en cliquant sur le bouton "Résolu" pour que les futures personnes qui voudront consulter ce sujet sachent qu'il contient une solution.

Tu peux réaliser cette opération toi-même en cliquant sur le bouton situé en haut de la page, si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)


sinon de rien :)

@+

Re: Addition deux var formatée avec number_format

par momo33 » 21 juil. 2016, 09:19

Merci pour tous ces conseils, ca m'avance bien et effectivement en appliquant number_format sur l'affichage (echo) ça marche mieux.

Bonne journée Mowgli !

Re: Addition deux var formatée avec number_format

par moogli » 20 juil. 2016, 17:01

salut,

php est à la mode anglo-saxonne, il lui faut des point comme séparateur décimal.

du coup il faut faire le number_format après le calcul.

d'une manière général il faut réserver ce type de fonction à l'affichage. ce te permet de travailler avec des données brute 'correctes' et de gérer ce qui n'est qu'une préférence d'affichage (si demain tu internationalise la chose il faudra revoir le code partout, alors que la c'est qu'a l'affichage ;) )

PS les balises pour mettre le code en couleur c'est ["langage"][/"langage"] par exemple
 [ /php] (sans l'espace devant le / ;) )

@+

Addition deux var formatée avec number_format

par momo33 » 20 juil. 2016, 14:55

Bonjour à tous,

c'est mon premier post sur un forum, donc si je fais mal n'hésitez pas à me prévenir.

Je suis en train d'essayer de passer des nombres à point (2.2 / 150.25 par exemple) à des nombres avec virgules (2,2 / 150,25). Après avoir écumé la toile, number_format m'a semblé la meilleur solution, tout marche parfaitement quand je convertis les nombre, mais si je les additionne (chose qui m'est indispensable), le résultat est un nombre sans virgule ni point.

Voici mon code :
<html>
<head>
	<meta charset="utf-8" />
</head>
<?php
	function setMinutes($minutesNouv) {

		if ( $minutesNouv == 00 || $minutesNouv == 15 || $minutesNouv == 30 || $minutesNouv == 45 ) {
			$minutes = $minutesNouv;
		} else {
			$minutes = 0;

		}
	}
	function getHeuresDecimales($heures, $minutes) {
		$time = $heures + ($minutes / 60);
		$time = number_format($time, 2, ",", "");
		return $time;
	}

	function setHeuresDecimales($heuresD) {
		$heures = floor(floatval($heuresD));
		setMinutes((floatval($heuresD) - floor(floatval($heuresD))) * 60);
	}
	
	$heure = getHeuresDecimales(10, 30);
	$heure1 = getHeuresDecimales(3, 30);
	echo $heure . '<br>';
	echo $heure1 . '<br>';
	echo $heure + $heure1;

?>
<body>
	<p>Convertir avec virgule</p>
</body>
</html>
et voici le résultat :

10,50
3,50
13
Convertir avec virgule

Je ne vois vraiment pas d'où cela peut venir, si quelqu'un peut m'aider.