Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] dopełanianie numeru zerami.. np zamiast 12 -> 00012
Forum PHP.pl > Forum > Przedszkole
kukix
Witam.
Mam taki problem.

Potrzebuje dopełnić numer zerami w ten sposób, aby cały ciąg znaków (liczba) miała np 6 zer...

czyli
1 zamieni na 000001
102 zamieni na 000102

Jest na to jakaś gotowa funkcja w php? W manualu nic nie znalazłem..

Będe bardzo wdzięczny za podpowiedź..
nospor
Cos kiepsko szukales
http://pl2.php.net/manual/pl/function.sprintf.php
kukix
dzięki za nakierowanie.

Mam jednak problem ze zrozumieniem tej funkcji

Czy taki zapis będzie odpowiedni?
  1. <?php
  2. printf("%06s\n",   $moj_numer);
  3. ?>


Kod ten działa ok. Jednak po co są te parametry po cyfrze 6 "s\n" ?


Próbowalem podstawić ilośc cyfer do zaokraglenia z tablicy i nie funkcja przestaął działać..

  1. <?php
  2. printf("%0".$cfg['zaokraglij_do']."s\n",   $moj_numer);
  3. ?>

Co zrobilem źle w tym drugim kodzie, że kod nie chce dopelniac mi numeru?


Proszę o jakies wskazówki.
drPayton
  1. <?php
  2. echo $cfg['zaokraglij_do'];
  3. ?>


I zobacz co tam jest, bo to co napisałeś ogólnie działa:

  1. <?php
  2. $moj_numer = 12;
  3. $tmp = 6;
  4. printf("%0".$tmp."s\n",   $moj_numer);
  5. ?>


Daje odpowiedni efekt winksmiley.jpg

A co do wcześniejszego pytania: \n to znak przejścia do nowej linii a resztę masz wyraźnie opisaną w podanym Ci linku w sekcji: 'format -> type specifier'
kukix
Cytat(drPayton @ 17.09.2008, 11:38:56 ) *
I zobacz co tam jest, bo to co napisałeś ogólnie działa:


Dzieki za podpowiedź. To był czeski błąd.. tablica nie mioałą żadnej wartości smile.gif
vokiel
Moim zdaniem funkcja której szukasz to: str_pad
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.