Wer kann mir erklären, was hier php genau macht? Wie kommt es zu dieser Ausgabe?
// Werte
$a = 42.02;
$b = 146.18;
$c = 188.20;
// Addition von Strings
$d1 = $a+$b;
// Vergleich der Werte
if($a + $b > $c) {
echo ("1. Durchlauf: <br>Not equal<br>");
echo var_dump($d1)."(Variable d)<br>";
echo var_dump($c)."(Variable c)";
}
// 2. Durchlauf mit gecasteten Werten
//------------------------------------------
// Cast in Float
$a = settype($a, 'float');
$b = settype($b, 'float');
$c = settype($c,'float');
// Adition von Float-Werten
$d2 = $a+$b;
// Vergleich der Werte
if($a + $b > $c) {
// nix
} else {
echo("<br>-----------------------------<br>");
echo "2. Durchlauf: <br>equal<br>";
echo var_dump($d2)."(Variable d)<br>";
echo var_dump($c)."(Variable c)";
}
Ausgabe:
1. Durchlauf:
Not equal
float(188.2) (Variable d)
float(188.2) (Variable c)
-----------------------------
2. Durchlauf:
equal
int(2) (Variable d)
bool(true) (Variable c)