Hallo allemaal,

Omdat het vorige topic over alles ging behalve de gestelde vraag, wil ik nu dezelfde vraag opnieuw stellen met meer informatie.

Om bovenstaand bedrag op te slaan, heb ik de type van betreffende kolom veranderd in float. En, om dit bedrag weer te geven in PHP gebruik ik nu de functie number_format().

Concreet gebruik ik nu de volgende code:

<td>' . number_format($row['purchaseprice'], 3, '.','.') .'</td>

En de output is: 1.700, maar ik wil juist het volledig bedrag laten zien.

Iemand een idee?
Ward, ik vind het ook vreemd, en dat blijkt ook niet zo gek te zijn omdat Mohamed schijnbaar niet weet hoe de formatting in Irak werkt. Hint: in Irak worden komma's gebruikt voor duizendtallen en punten voor decimalen.
En de relevantie daarvan is, wat precies?

Voor de grap even wat Arabische formattering erbij gepakt. Mohammed, let op:

Arabic - Saudi Arabia 1,234.56
Arabic - Iraq 1,234.56
Arabic - Egypt 1,234.560
Arabic - Algeria 1,234.56
Hallo Ben,

Eigenlijk klopt bovenstaande info over Irak niet en volgens mij is het zelfs out of date, want dat had ik zelf al gevonden en overlegd met de lokale mensen en toen zei men dat er niets van klopt.
Volgens de lokale mensen betaalt Irak sinds de jaren '90 niet meer met de centen of Iraakse cent/fils.

Even een korte introductie over de huidige Iraakse Dinar = 1x Dinar wordt geschreven als 1x 1000 Dinar op het biljet en dus bestaat uit 4x 250.000 ;-). Een snoepje kan bijv 1000.250 kosten. Dus die laatste 250.000 kun je als cent zien, maar eigenlijk is het niet.

En dus om het systeem voor hen makkelijk te maken, wilde ik daarom dat er geen nullen verschijnen na het tweede decimale punt, omdat men reeds werkt met duizenden en miljoenen. Eigenlijk heel verwarrend dus allemaal. Maar goed het werkt en daar ben ik heel blij mee ;-)
Dan moet je daar toch eens naar kijken, want dit is een tabel uit 2015. Het is ook niet logisch, om de reden die Ward al schetst. Hoe ga jij nu bepalen of 2.000 2000 is of 2? Hoe weet je dat 2.000.000 2000000 is of 2000? Farsi heeft een afwijking, namelijk getallen als 1.2345/67, maar dat is een uitzondering, en is nog steeds wel duidelijk.
Daar heb je wel een punt natuurlijk en daarom heb ik nu een komma gezet voor de centen zeg maar.
Dus om een getal duidelijk te maken, wordt het als volgt weergegeven: 20.000,500 weergegeven.
Ik ben nog aan het uitzoeken, want het zou ook mogelijk kunnen zijn dat ik de punt en komma van plaats moet wisselen.
Wordt nog vervolgd...
Raad eens wat de derde parameter $dec_point en de vierde parameter $thousands_sep van number_format() doen?

string number_format ( float $number , int $decimals = 0 , string $dec_point = "." , string $thousands_sep = "," )

Iemand nog koffie?

Ben van Velzen op 04/10/2017 15:22:21

En de relevantie daarvan is, wat precies?

Voor de grap even wat Arabische formattering erbij gepakt. Mohammed, let op:

Arabic - Saudi Arabia 1,234.56
Arabic - Iraq 1,234.56
Arabic - Egypt 1,234.560
Arabic - Algeria 1,234.56

Hallo Ben,

Ik heb nog eens nagevraagd en zelf gekeken naar hoe het Iraakse valuta systeem wordt gebruikt, dus hoe punten en/of komma's worden gebruikt en het blijkt dat je gewoon gelijk hebt :D.
Ik heb een voorbeeld loonstrookje ontvangen en daarin wordt vermeld 1,700,000.00. En dus zoals je ziet, wordt er komma's gebruikt, zoals je had aangegeven en er zijn twee nullen, maar sinds er niet met centen wordt gewerkt, hoeven die nullen ook niet weergegeven te worden.
M.a.w. je hebt helemaal gelijk kerel en sorry voor al die moeite....

Momenteel gebruik ik de volgende code en het doet precies wat ik doe:

echo number_format($row['purchaseprice']);




Lekker simpel en overzichtelijk :-)
Ward, goh? Er was volgens mij helemaal geen twijfel over wat number_format met zijn parameters doet. Van mijn kant in ieder geval niet.

Reageren