Goedendag mensen,

Ik zit met een probleem waar ik even niet het licht van zie. Ik haal uit een xml file een waarde en deze kan ik ook weer echo'en wat als waarde geeft: 8.5000

Als ik deze waarde vermenigvuldig met 0.9 komt er 7.2 uit maar dit zou 7.65
moeten zijn. Als ik dit terugreken rekent php dus niet met het getal achter de
punt waardoor de uitkomst verkeerd is. Php rekent met 8 ipv 8.5.

Nu zal de oplossing zeer simpel zijn, maar na een tijdje zoeken kan ik het niet vinden. Wie kan mij in de goede richting wijzen?

De formule:
//Waarde uit xml file halen
$SalesPrice = $item->SalesPrice;
//Waarde vermenigvuldigen
$InkoopPrice = ($SalesPrice*0.9);
Hallo Dennis Graaf

Als ik 8.5000 * 0.9 doe, kom ik wel gewoon 7.65 uit.
<?php

# Count the hole number:
$salesPrice = 8.5000;

# Now, only show 90% of the sales price:
$purchasingPrice = $salesPrice * 0.9;

# Returns 7.65:
echo $purchasingPrice;

?>Dus ik zou eens echo $salesPrice doen!
waarschijnlijk word $salesprice getypecast naar een int ipv naar een float,
probeer dit eens:

<?php
	$InkoopPrice = ((float)$item->SalesPrice*0.9);
?>

Bram een dank voor je oplossing. Was al bang dat het iets te maken zou hebben met float, maar mijn kennis was daar nog niet groot genoeg voor. Het werkt nu zoals het hoort.

Reageren