Consultez la formation SEO spéciale Wordpress
par WebRankInfo / Ranking Metrics

Messages: 2570

Enregistré le: 1 Aoû 2007

Message le Mar Sep 21, 2010 18:07

Bonjour,

J'aimerais formater des montants stockés en string de la façon suivante:
1-supprimer les points faisant office de virgule
2-tous les montants doivent être en centime

Ex :

1000 -> 100000
512.5 -> 51250
512.75 -> 51275

Merci de votre aide
Haut
8 Réponses
Messages: 8555

Enregistré le: 14 Mai 2003

Message le Mar Sep 21, 2010 18:22

http://php.net/manual/fr/function.number-format.php
Code: Tout sélectionner
number_format($number, 2, '', '');
Haut
Messages: 759

Enregistré le: 16 Mai 2010

Message le Mar Sep 21, 2010 18:26

Il faut aussi multiplier par 100 avant traitement non ?
Haut
Messages: 8555

Enregistré le: 14 Mai 2003

Message le Mar Sep 21, 2010 18:29

Schwarzer Stern a écrit:Il faut aussi multiplier par 100 avant traitement non ?

Non pas besoin, c'est juste le séparateur des décimales qui est une chaine vide, au lieu du point.

Code: Tout sélectionner
<?php
$number = 1000;
echo number_format($number, 2, '', '').'<br />';
$number = 512.5;
echo number_format($number, 2, '', '').'<br />';
$number = 512.75;
echo number_format($number, 2, '', '').'<br />';
?>


100000
51250
51275
Haut
Messages: 759

Enregistré le: 16 Mai 2010

Message le Mar Sep 21, 2010 18:31

Merci de m'instruire ;)
Haut
Messages: 2570

Enregistré le: 1 Aoû 2007

Message le Mar Sep 21, 2010 20:47

mais quel idiot que je suis !

j'utilise cette fonction depuis des lustres tous les jours pratiquement !!!

merci bcp !
Haut
Messages: 376

Enregistré le: 1 Juin 2010

Message le Mer Sep 22, 2010 2:31

Code: Tout sélectionner
$valeur_centimes=intval(preg_replace("#\.#","",$valeur_euros));


que tu peux boucler
Haut
Messages: 8555

Enregistré le: 14 Mai 2003

Message le Mer Sep 22, 2010 9:36

michel.leonard a écrit:
Code: Tout sélectionner
$valeur_centimes=intval(preg_replace("#\.#","",$valeur_euros));


que tu peux boucler


Code: Tout sélectionner
$valeur_euros = 1000;
$valeur_centimes=intval(preg_replace("#\.#","",$valeur_euros));
echo $valeur_centimes;

Ça ne fonctionne pas:
1000
Haut
Messages: 2570

Enregistré le: 1 Aoû 2007

Message le Mer Sep 22, 2010 10:09

mais number format est nickel et en plus est prévu pour ça donc pas de souci
Haut

Formation recommandée sur ce thème :

Formation SEO spéciale Wordpress : apprenez à optimiser le référencement naturel d'un site fait avec Wordpress... Formation Ranking Metrics animée par un expert SEO / Wordpress.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.