1000.00 = 1.000,00

Slawek

No avatar

2006-03-24 16:26

Czy moze mi ktos tutaj powiedziec co sie zmienia zeby cena innaczej pisala?

Ja myslalem o tym przykladzie 1000.00 = 1.000,00

treewood (OpenSolution)

Avatar: treewood

2006-03-24 16:39

slawek - poszukaj tego na forum. bylo cos o tym. w skrocie zainteresuj sie funkcja tPrice() w core/other.php i funkcji number_format()

Slawek

No avatar

2006-03-24 17:25

oki treewood dzieki jeszcze raz za odpowiedz, sprubuje poszukac :-)

sq5be

No avatar

2006-04-03 13:57

Sprawa chyba nie jest taka prosta. Funkcja tPrice() formatuje sposób wyswietlania wartości numerycznej poprzez funkcję php sprintf tak aby cena miala dwie cyfry po przecinku. Jezeli zmienimy znak separatora dziesietnego (np. uzyjemy funkcji number_format) to php nie bedzie prawidlowo interpretowac wartosci numerycznych, innymi slowy:

1.000,00 + 0,40 = 1

Wydaje mi sie ze wyjsciem z sytuacji byloby odzielne formatowanie stringow do wyswietlenia cen na ekranie.

3W4ALL

No avatar

2006-04-08 13:50

YOU MODIFY THE SAME THINGS...

function tPrice( $fPrice ){
return sprintf('%01s', number_format($fPrice, 2, ',', '.'));

} // end function tPrice



;-)

sq5be

No avatar

2006-04-11 09:24

Funkcja powyzej oczywiscie spowoduje sformatowanie stringu do wlasciwej postaci np.
1040.90 zostanie przeksztalcone do postaci 1.040,90 tyle tylko, ze jezeli wykonamy na takim argumencie jakas operacje arytmetyczna (a separatorem dziesietnym w danym OS bedzie kropka) to PHP przyjmie jako wartosc liczbe 1.040.
Inna sprawa ze jak wyczytalem w specyfikacji do uslugi np. AllPay kwoty nalezy podawac z separatorem w postaci "kropki". Nadal jak mi sie wydaje jedynym sensownym sposobem na wyswietlanie cen w sposob inny niz notacja numeryczna byloby odzielne formatowanie wartosci wyswietlanych (drukowanych) na stronach sklepu.

Pozdrawiam

Do góry
o nas | kontakt