Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Automatyczne Generowanie Liczb Słownie (?)
karolski
post
Post #1





Grupa: Zarejestrowani
Postów: 199
Pomógł: 0
Dołączył: 12.02.2004
Skąd: Czymiasto

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


Witam,

Ciężko wyjaśnić w temacie co ja cche ale mam problem z sytulacja po wpisaniu wartości (liczby np. 49) zeby mozna bylo automatycznie wygenerowac tą liczbe słownie to jest dziwne ale mi potrzebne czy ktos moze powiedziec jak cos takiego zrobic.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
DrOOcik
post
Post #2





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 10.09.2004

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


Klasa Numbers_Words z pakietu PEAR jest OK, ale czasem skrypt wymaga "pełnej przenośności" na dowolny server, w każdej chwili.
Przy instalacji nowej klasy należy zainstalować pakiet PEAR na danym serverze, no i potem klasę Number_Words.
I jeśli się o tym zapomni, skrypt się "wywala", bo nie zainstalowano klasy...

Czyli taki kodzik rolling'a się jednak przyda (dzięki, miałem coś takiego zrobić u siebie, ale nie miałem czasu - to fajnie, że jednak czasem ktoś sie dzieli swoimi rozwiązaniami).
Co z tego, że do tysiąca, w końcu można to szybko rozbudować dalej na setki tysięcy... a i ceny raczej oscylują własnie w tych granicach.

Można ewentulnie dodać warunek, że jak > 1000 to dawać gwiazdki na returnie i już. Bo... właśnie, jest mały bug:

Mam zmienną $suma, co jest typu double (wzięte z mysql) i mimo, że jest np. 14.50 to i tak funkcja "miele" i nic... Bo za dużo "cyferek" przed przecinkiem czy jakoś tak.
To samo się zawiesza własnie przy dużych sumach.

Wrzucałem taką zmienną do w/w skryptu i kicha: echo Kwota_Slownie($suma,1);

i mielił... Ale znalazłem prosty sposób (wręcz "debilny"):

Przy function Kwota_Slownie ($kwota,$typ)

$kwota_kopia = $kwota*100/100;

i już, sprawa załatwiona ;-)


[OT] W ogóle, z typem double, zmienneprzecinkowym jest kupa problemów, bo 0 nie zawsze równa się 0 (problem z zaokrąglaniem, dokładność po przecinku...), ale to raczej zupełnie inny temat. Bo po latach całkiem przypadkiem znalazłem taki bug i teraz jak porównuję dwie liczby double to przedtem je przez sprintf odpowiednio "kształtuję'. Nie mówiąc o zaokrągleniach. Tam też te liczby potrafią się dziwnie zachowywać.


Pozdr.

Ten post edytował DrOOcik 10.09.2004, 22:47:47
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 5.10.2025 - 22:53