[RESOLU] question tres simple sur nombre de caracteres a l'ecriture

question tres simple sur nombre de caracteres a l'ecriture [RESOLU] - PHP - Programmation

Marsh Posté le 07-04-2006 à 11:44:59    

Yop !
Je voudrais écrire dans un fichier une variable.
Cette variable est issue d'une base de données, et n'a donc pas tjr la meme valeur.
 
Il se trouve que des fois elle fait 6 ou 7 caracteres et parfois 13.
 
Voila c'est tres simple, je voudrais tout simplement ecrire cette variable sur 13 caracteres dans mon fichier txt.
Par exemple si ma variable vaut H641110 je dois écrire "H641110      ".
 
alors j'ai pensé a faire ça

Code :
  1. while (strlen($mavar)<13){
  2.   $mavar = $mavar." ";
  3. }


théoriquement c'est juste mais je me demandais s'il yavait pas une solution un peu moins lourde...
 
Ah et j'oubliais, j'ai un pbm du meme style, c'est pour un nombre, je veux l'écrire avec 2 chiffres apres la virgule.
 
Voila merci.

Message cité 1 fois
Message édité par Yertle le 07-04-2006 à 13:56:30
Reply

Marsh Posté le 07-04-2006 à 11:44:59   

Reply

Marsh Posté le 07-04-2006 à 11:50:37    

En fait c'est plus compliqué pour les nombres.
Je voudrais un système qui donne :
si $montant = 123456 j'écris "+00000123456.00"
et si $montant = -123456 j'écris "-00000123456.00"
Merci.

Reply

Marsh Posté le 07-04-2006 à 11:53:45    

Reply

Marsh Posté le 07-04-2006 à 11:55:15    

Yertle a écrit :

Yop !
Je voudrais écrire dans un fichier une variable.
Cette variable est issue d'une base de données, et n'a donc pas tjr la meme valeur.
 
Il se trouve que des fois elle fait 6 ou 7 caracteres et parfois 13.
 
Voila c'est tres simple, je voudrais tout simplement ecrire cette variable sur 13 caracteres dans mon fichier txt.
Par exemple si ma variable vaut H641110 je dois écrire "H641110      ".
 
alors j'ai pensé a faire ça

Code :
  1. while (strlen($mavar)<13){
  2.   $mavar = $mavar." ";
  3. }


théoriquement c'est juste mais je me demandais s'il yavait pas une solution un peu moins lourde...
 
Ah et j'oubliais, j'ai un pbm du meme style, c'est pour un nombre, je veux l'écrire avec 2 chiffres apres la virgule.
 
Voila merci.


 
http://fr2.php.net/manual/fr/function.str-pad.php
 

Yertle a écrit :

En fait c'est plus compliqué pour les nombres.
Je voudrais un système qui donne :
si $montant = 123456 j'écris "+00000123456.00"
et si $montant = -123456 j'écris "-00000123456.00"
Merci.


 
En effet, c'est plus compliqué.[:petrus75]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 07-04-2006 à 12:02:48    

C'est plus compliqué mais ça reste facile à condition que les parametres de printf() marchent aussi pour fopen()
Merci ana.

Reply

Marsh Posté le 07-04-2006 à 12:06:27    

faut d'abord que j'arrive a piger les param de sprintf(), c'est pas clair sur la doc :S

Reply

Marsh Posté le 07-04-2006 à 12:08:44    

ah mais non en s'en fout que ça marche pour fputs (j'ai dit fopen 2 posts avant mais je pensais fputs...)
sprintf retourne une chaine, c'est nickel !!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed