[PHP] Zamiana kwot na słowa

Odpowiedz Nowy wątek
2006-08-18 13:04
0

Jak napisać program zamieniający kwoty na kwoty słownie? (wiem, że istnieją biblioteki pear ale w moim przypadku nie mogę ich użyć :/) Chodzi o program zamieniający kwoty do 1 Miliarda...
Chodzi mi o prostą funkcję gdzie wprowadzałoby się kwotę z przecinkiem lub innym znakiem (funkcja explode, żeby łatwo można było zmieniać separator).

Z góry dziekuje [!!!]


Stopki brak.

Pozostało 580 znaków

2006-08-18 14:38
2006-08-19 01:04
0

beznadzieja =>>
4000000000 to oczywiście cztery miliardy milionów tysięcy złotych


Stopki brak.

Pozostało 580 znaków

2006-08-19 09:24
0
voldenet napisał(a)

beznadzieja =>>
4000000000 to oczywiście cztery miliardy milionów tysięcy złotych

No to napisz wlasna - w czym problem? Bierzesz liczbe np. 4342342, dzielisz na trojki: 4 342 342 i kazda trojke dajesz do funkcji, ktora:
342/100 = 3-> trzysta
342/10%10 = 4 -> czterdziesci
342%10 = 2 -> dwa
i dodajesz odmieniajac odpowiednio tysiace, miliony, miliardy. I tyle

pozdrawiam
johny


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-08-19 10:47
0

http://4programmers.net/PHP/FAQ/Jak_zamienić_liczbę_na_jej_postaćsłowną

to jest bez liczb po przecinku ale to sobie możesz łatwo dorobić, np:

function kwotaslownie($kwota){
  $kwota = explode(',', $kwota);
 
  $zl = preg_replace('/[^-\d]+/','', $kwota[0]);
  $gr = preg_replace('/[^\d]+/','', substr(isset($kwota[1]) ? $kwota[1] : 0, 0, 2));
  while(strlen($gr) < 2) $gr .= '0';
 
  echo slownie($zl) . ' ' . odmiana(Array('złoty', 'złote', 'złotych'), $zl) .
      (intval($gr) == 0 ? '' :
      ' ' . slownie($gr) . ' ' . odmiana(Array('grosz', 'grosze', 'groszy'), $gr));
}
 
echo kwotaslownie('502,15');

Dwie zasady gwarantujące sukces:
1. Nigdy nie mów nikomu wszystkiego<span style="color: white">

Pozostało 580 znaków

2006-08-19 12:57
0
voldenet napisał(a)

beznadzieja =>>
4000000000 to oczywiście cztery miliardy milionów tysięcy złotych

Jakbyś przeczytał cały tamten temat to byś wiedział, że skrypt się wykłada na zerach...
I taj jak mówił @johny_bravo</b">b>@johny_bravo</b</a> jak Ci się nie podoba to sobie napisz sam. Prosił, dostał i jeszcze marudzi...

Pozostało 580 znaków

2006-08-20 17:00
0
angel2953 napisał(a)

Prosił, dostał i jeszcze marudzi...

[rotfl] Banalny błąd w skrypcie...


Stopki brak.

Pozostało 580 znaków

2006-08-21 10:03
0
voldenet napisał(a)
angel2953 napisał(a)

Prosił, dostał i jeszcze marudzi...

[rotfl] Banalny błąd w skrypcie...

Skoro to banalny błąd to go popraw i daj znać autorowi a nie marudzisz.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0