Formater une cellule nombre

cipriano
Invité n'ayant pas de compte PHPfrance

24 févr. 2010, 23:58

Bonjour je débute sur php, dans mes premier script, page php je cherche a formatter un nombre avec des espace entre chaque chiffre .

Je m'explique en plus clair :
Voila ligne de code en php qui me produit un chiffre que je désire.

$pdf->MultiCell(0, 0, money_format($object->total_ttc, 2, ' ', ' '), 0, 'L');

Résultat : 1000 00

et j'aimerais avoir des espace entre chaque chiffre pour pouvoir affichier par exemple :
1 0 0 0 . 0 0 ( sans le point entre les chiffres ça serais le top)

Voila je pense que c'est un truc de débutant mais j'ai cherché pas mal sur internet et j'ai rien trouvé alors si vous avez des idées je suis prenneur....

Thx

ViPHP
AB
ViPHP | 5818 Messages

25 févr. 2010, 00:12

Bizarre comme demande. Les méthodes pour formater les nombres number_format() ne devraient pas te convenir puisque tu souhaites un affichage non standard.
Au plus simple j'utiliserais str_split() . Ta chaine de caractères sera convertie en tableau, et en listant le tableau tu pourras bien faire les manipulations que tu veux.

ViPHP
ViPHP | 2287 Messages

25 févr. 2010, 14:01

Autre possibilité, pour obtenir exactement ce résultat visuel sans gros efforts, on peut jouer avec la propriété letter-spacing en CSS.
if(!@work()){ Nespresso(); } else { what(); }
______________________________

ViPHP
ViPHP | 1996 Messages

25 févr. 2010, 20:33

Autre possibilité, pour obtenir exactement ce résultat visuel sans gros efforts, on peut jouer avec la propriété letter-spacing en CSS.
Même avec une sortie pdf ($pdf ->) ?
Je pense que la méthode d'AB serait plus adéquate si la sortie CSS est incompatible avec la sortie pdf.
Penses ensuite à remplacer le "." avec str_replace
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

cipriano
Invité n'ayant pas de compte PHPfrance

25 févr. 2010, 20:39

Effectivement c'est dans la création d'un fichier pdf donc le css ca va pas mais merci pour l'info.
Je vais essayer a la minute je vous redi si ca marche ...

Cipriano
Invité n'ayant pas de compte PHPfrance

25 févr. 2010, 21:04

Mince j'arrive pas voila mon code si vous avez une idée ou j'ai fait faut ?
		$prix_split = str_split($object->total_ttc);
		$pdf->MultiCell(0, 0, print_r($prix_split));

cipriano
Invité n'ayant pas de compte PHPfrance

25 févr. 2010, 21:48

Merci , Thx , Grazie a tous pour vos réponse, combiné j'ai réussi .... avec implode()

Pour info je pense que ca vous intéresse pas plus que ca mais voila la ligne de code ...
$pdf->MultiCell(0, 0, implode('   ',str_split(number_format($object->total_ttc,2, ' ' , '  '))));
Encore merci ...
@+

ViPHP
AB
ViPHP | 5818 Messages

25 févr. 2010, 21:59

Dans ta première ligne tu as converti ta chaine de caractères en tableau. L'avantage est de pouvoir traiter les éléments de ton tableau séparément mais je ne vois aucune fonction qui traite les éléments de ton tableau :!:
$prix = "1000.00";

$tab_prix = str_split($prix);
$format_prix = implode(' ',$tab_prix);
$format_prix = str_replace('.','',$format_prix);

echo '<pre>';
print_r($format_prix);
echo '</pre>';
EDIT Pas vu ton message avant de poster. C'est le même principe. Un petit résolu ?

cipriano
Invité n'ayant pas de compte PHPfrance

25 févr. 2010, 23:23

Lol ;-) Thx AB j'ai essayé ta solution c'est fonctionnel aussi je vais garder ta soluce, c'est presque plus lisible....

Oui sans problème pour le résolu...

@Bientot