Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> dodawnie $a+b
JJack
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 25.12.2005

Ostrzeżenie: (0%)
-----


Witam, mam takie proste pytanie.
Jak zrealizować w PHP..... DODAWANIE winksmiley.jpg

Z tym że mam liczbę : 0001

chciałbym żeby

CODE
$a = 0001;
$b = 3;

$a+b = 0004


Jak zrobić żeby zachować 4 cyfrową liczbę ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
flashdev
post
Post #2





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Napisz do czego Ci to potrzebne, bo po pierwsze Twoja pierwsza linijka kodu jest bez sensu bo i tak zostanie zinterpretowana jako liczba int wynosząca 1.
Jeśli chodzi o formatowanie wyświetlanych liczb to służy do tego np. printf.
  1. printf("%5d", 35);


--------------------
Go to the top of the page
+Quote Post
JJack
post
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 25.12.2005

Ostrzeżenie: (0%)
-----


Chodzi o generowanie nazw plików:

Mam pliki produkt_0001.jpg

Wyciągam z bazy rekord o "największej" wartości poprzez DESC.

ze stringa wyciągam wartość czterocyfrową i chcę dodać do niej +1

o to mi chodzi winksmiley.jpg
Go to the top of the page
+Quote Post
sniver
post
Post #4





Grupa: Zarejestrowani
Postów: 159
Pomógł: 5
Dołączył: 31.08.2007

Ostrzeżenie: (0%)
-----


zobacz to: http://pl.php.net/manual/en/function.number-format.php


--------------------
Go to the top of the page
+Quote Post
flashdev
post
Post #5





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Cytat(JJack @ 10.10.2010, 13:44:01 ) *


  1. <?
  2.  
  3. function incr($num, $len = 4){
  4. return str_replace(' ', '0', sprintf("%".$len."d", ++$num));
  5. }
  6.  
  7. echo incr(7);


To powinno pomóc winksmiley.jpg


--------------------
Go to the top of the page
+Quote Post
JJack
post
Post #6





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 25.12.2005

Ostrzeżenie: (0%)
-----


ok, sprawdziłem winksmiley.jpg

  1. $a='0001';
  2. $b='1';
  3. $c = $a+$b;
  4. echo number_format($c,3,'','');
  5.  


wyrzuca 2000, zamiast 0002



Go to the top of the page
+Quote Post
Zigi
post
Post #7





Grupa: Zarejestrowani
Postów: 57
Pomógł: 3
Dołączył: 20.11.2004

Ostrzeżenie: (0%)
-----


Może takie coś:
  1. echo str_repeat('0', 4 - strlen($a+$b)).$a+$b;


i trochę lepszy kod
  1. str_pad($a+$b, 4, '0', STR_PAD_LEFT);
Go to the top of the page
+Quote Post
JJack
post
Post #8





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 25.12.2005

Ostrzeżenie: (0%)
-----


No bardzo fajnie !

Dziękuję bardzo, bo już chciałem sprawdzać ile cyfr zawiera wynik dodawania i w pętli dodawać "0" , ale to jakaś masakra by była winksmiley.jpg

Go to the top of the page
+Quote Post
flashdev
post
Post #9





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Cytat(JJack @ 10.10.2010, 14:16:21 ) *
No bardzo fajnie !

Dziękuję bardzo, bo już chciałem sprawdzać ile cyfr zawiera wynik dodawania i w pętli dodawać "0" , ale to jakaś masakra by była winksmiley.jpg


Rozumiem, że jeszcze nie wiesz co to są funkcje w php? smile.gif


--------------------
Go to the top of the page
+Quote Post
Crozin
post
Post #10





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Przecież "dobrejszy" kod został podany już przez flashdeva w drugim poście...
Go to the top of the page
+Quote Post
JJack
post
Post #11





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 25.12.2005

Ostrzeżenie: (0%)
-----


nie no oczywiście że wiem winksmiley.jpg
ale nie znałem str_pad() , nigdy z tego nie korzystałem winksmiley.jpg

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 03:15