Hallo Hans,
ich habe zwei Preise, ein hoher ein niedriger. Wie kann ich mit PHP die Differenz in % errechnen?
Diese Angabe kann man vielfältig deuten und beantworten. Ich nehme an, Du willst wissen und berechnen, um wieviel % ein höherer Preis teurer ist als ein niedrigerer. Wenn also Preis 1 500€ und Preis 2 750€ beträgt, dann ist der höhere Preis um 50% teurer.
In diesem Fall ist folgender Weg eine Möglichkeit:
<?php
// Gegeben sind 2 Preise, von denen jeder der größere sein könnte:
$preis_1 = floatval(25);
$preis_2 = floatval(14.95);
// Die 2 Preise kommen in ein Array und werden nach Größe sortiert.
// Der erste Wert des Arrays ist dann der niedrigere Preis:
$preise = array($preis_1, $preis_2);
sort($preise);
// Der erste, kleinere Preis ist 100%.
// Berechnet wird nun, wieviel % somit der größere Preis ist.
// Zieht man davon 100 ab, weiß man, um wieviel % der 2. Preis höher ist.
// Das Ergebnis wird dann noch auf die Einserstelle gerundet:
$prozent = round(($preise[1]*100/$preise[0])-100);
// Ergebnis:
echo $preise[1].'€ ist um '.$prozent.'% teurer als '.$preise[0].'€.';
?>
Mit lieben Grüßen
Melvin Cowznofski
--
What – me worry?
What – me worry?