Autor | Zpráva | ||
---|---|---|---|
zacatecnik123 Profil |
#1 · Zasláno: 12. 1. 2012, 20:06:30
Zdravím,
potřeboval bych poradit s kodem, který by na jedné stránce nechal návštěvníka napsat 3 místné číslo a po odeslání na druhou by to vypasalo číslo slovy. Předem díky za rady. |
||
Giga Profil * |
#2 · Zasláno: 12. 1. 2012, 20:18:04
No tak toto som riešil v Exceli, keď sa mi nechcelo vypisovť na faktúru sumu slovom ...
Normálne rozložiť na stovky desiatky jednotky a poskladať pomocou polí. |
||
Str4wberry Profil |
#3 · Zasláno: 12. 1. 2012, 20:33:01
Můžeš použít nějaké hotové řešení nebo si napsat vlastní — stačí ti k tomu funkce
substr a pár podmínek.
|
||
zacatecnik123 Profil |
#4 · Zasláno: 12. 1. 2012, 20:42:18
Dobrá pustím se do toho vlastního. Děkuji za pomoc ta funkce je to co jsem hledal.
|
||
Joker Profil |
#5 · Zasláno: 12. 1. 2012, 21:08:09
Str4wberry:
Proč zrovna substr? Jinak nástřel od boku jak si myslím, že by to mohlo fungovat: function slovy($castka) { $stovky = array("", "jednosto", "dvěstě", "třista", "čtyřista", "pětset", "šestset", "sedmset", "osmset", "devětset"); $desitky = array(2=>"dvacet", "třicet", "čtyřicet", "padesát", "šedesát", "sedmdesát", "osmdesát", "devadesát"); $jednotky = array("", "jedna", "dva", "tři", "čtyři", "pět", "šest", "sedm", "osm", "devět", "deset", "jedenáct", "dvanáct", "třináct", "čtrnáct", "patnáct", "šestnáct", "sedmnáct", "osmnáct", "devatenáct"); if(($castka < 1) || ($castka > 999)) return ""; // funguje v rozsahu 1-999 $slovy = $stovky[floor($castka/100)]; $temp = $castka % 100; if($temp > 19) $slovy = $slovy.$desitky[floor($temp/10)].$jednotky[$temp % 10]; else $slovy = $slovy.$jednotky[$temp]; return $slovy; } |
||
Časová prodleva: 2 roky
|
|||
Jack Bauer Profil * |
#6 · Zasláno: 19. 7. 2013, 00:02:34
Joker:
Díky, dovolil jsem si ten nástřel od boku použít ;) Joker: |
||
Časová prodleva: 11 let
|
0