Hi Mathias,
// oder:
$var = 5000 / 2;
// schneller
$var = 5000 * 0.5;
>
> Noch schneller:
>
> `$var = 5000 >> 1;`{:.language-php}
aber auch sehr viel schwerer zu lesen, IMHO ;-)
> (Bei obigem würde ich die Multiplikation lediglich als „weicher“ empfinden; ob sie schneller ist, könnte ich nicht abschätzen.)
obiges ist nicht mal vergleichbar, denn eine Multiplikation mit 0.5 ist in PHP nicht das gleiche wie eine Division durch 2:
$ php -r 'printf("%s\n%s\n", gettype(5000 / 2), gettype(5000 \* .5));'
integer
double
öhm - allerdings steht unter <http://www.php.net/manual/en/language.operators.arithmetic.php>:
"The division operator ("/") returns a float value anytime, even if the two operands are integers (or strings that get converted to integers)."
Die lügen ja! \*scary\*
Gute Nacht,
Andreas.