replacer un point par une virgule - PHP - Programmation
Marsh Posté le 16-04-2007 à 20:50:56
formatage directement en SQL, c'est pas possible ?
Marsh Posté le 16-04-2007 à 21:32:37
non, parce que la donnée que je récupère de SQL vient déjà sous la forme d'un SELECT champs1 * champs2 AS resultat...
De plus, ce que j'écris doit être une application à installer localement, donc moins je touche côté serveur, mieux c'est !
Marsh Posté le 16-04-2007 à 21:43:15
preg_replace("#,#", '.', $in); ?
Marsh Posté le 17-04-2007 à 01:09:20
Et ça n'irait-il pas mieux: http://fr.php.net/number_format ?
Sinon plus simplement ya aussi http://fr.php.net/str_replace
Marsh Posté le 17-04-2007 à 09:16:43
merci pour toutes ces réponses, je vais trouver mon bonheur dedand
Marsh Posté le 07-08-2019 à 19:42:13
Je reprend le code:
"preg_replace('.', '\,', $in);"
C'est pas bon syntaxiquement parce qu'un motif d'expression régulière en PHP doit toujours commencer et se terminer par le même caractère n'apparaissant pas dans le reste de la chaine (par exemple $motif="@coucou@"; ou motif="&coucou&";
Ensuite, le "." a une signification en expression régulière, il signifie "n'importe quel caractère"
Donc remplace ton code par celui-ci "preg_replace('&\.&', ',', $in);
Et ça devrait marcher!!
Pour les caractères réservés en expression régulière, toujours le faire précédé par "\" (caractère d'échapement) pour l'identifier comme "caractère"!! Y compris \ lui même (pour identifier "\", le remplacer par "\\" );
Marsh Posté le 16-04-2007 à 20:43:28
Bonjour,
Je tente d'écrire une fonction preg_replace mais comme d'hab, je n'arrive pas.
En fait, je récupère un prix de mysql sous la forme 17.3 par exemple, et je dois le transformer en 17,30...
Pour la virgule, je pensais à :
mais ce n'est pas la bonne solution. Concernant le 0 si le chiffre après le virgule ne comporte qu'un chiffre... je n'ai aucune idée.
Est ce qu'une âme charitable pourrait me mettre sur les bonnes pistes ????
MERCI d'avance,