Page 1 sur 1

[Resolu] Division d'une variable par une autre et formatage

Posté : 14 juil. 2007, 17:01
par bunk
Bonjour,

C'est la première fois que je veux faire ca et malgré les nombreuses doc cela ne marche pas, si quelqu'un avais une petite idée.

Je prend un chiffre à virgule que je divise par un entier et je veux afficher le résultat réel :

ex : 758,94 / 2 = 379,47

je pensais que cela serais bon : number_format($montant/$nb, 2, ',', ' ');


D'avance merci

Posté : 14 juil. 2007, 17:44
par ouckileou
Et quel problème as-tu exactement ?

On ne devrait jamais dire "ça ne marche pas" sur un forum de développement, mais "voici mon problème"

Posté : 14 juil. 2007, 17:54
par bunk
le problème et bien par exemple la je test avec ceci :

$montant = '11,99'; // recup mysql
$nb = '2'

number_format($montant/$nb, 2, ',', ' ');


ce qui devrait me donner comme résultat : 5,995
et il me retourne : 11,00


si je remplace : number_format($montant/$nb, 2, ',', ' ');
par : number_format($montant/2, 2, ',', ' ');

il me retourne : 5,50 (toujours pas bon)



C'est un peu plus claire surement.
Merci de ton aide

Posté : 14 juil. 2007, 18:20
par Truc
regarde déjà ce que retourne $montant/$nb

Posté : 14 juil. 2007, 18:37
par Hubert Roksor
T'as pas lu le manuel

:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(
:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(
:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(
:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(
:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(:(

Posté : 14 juil. 2007, 20:10
par bunk
Escusez moi le resultat était 11 parcque je n'utilisais pas la bonne variable, effectivement, 11/1 ca fait 11,

Donc par contre 11,99/2 devrait donner 5,995 et non pas 5,50

En ce qui concerne le manuel, Hubert, je dirais plus que je n'ai pas compris les explications, parcque j'y ai passé un moment sur php.net

merci pour votre aide

Posté : 14 juil. 2007, 20:13
par ouckileou
Si tu regardes attentivement le manuel, tu verras que les nombres décimaux utilisent un point, et non une virgule.

Posté : 14 juil. 2007, 20:15
par Hubert Roksor
Ben le manuel dit
Les nombres décimaux (connus aussi sous le vocable de "double", "float" ou "nombre réels") peuvent être spécifiés en utilisant la syntaxe suivante :
<?php
$a = 1.234; 
$b = 1.2e3; 
$c = 7E-10;
?>
Toi t'as écrit:
le problème et bien par exemple la je test avec ceci :
$montant = '11,99';
Normalement c'est le moment où tu t'aperçois que ta syntaxe ne correspond à aucune du manuel. Utilise une de ces trois syntaxes et ça devrait régler ton problème.

Posté : 14 juil. 2007, 20:21
par bunk
houlala d'accord, j'avais pas du tout tilté pour le point !
j'aurais pu cherché longtemps, je sais pas ce que je cherché mais j'étais loin.


merci pour votre aide!