Brett vorm Kopf. Finde den Fehler nicht.
bearbeitet von
Hallo Graf,
im Gegensatz zur Doku wandelt decbin keinen **dezimalen** Wert ins Binärformat, sondern nur einen **Integer**-Wert. D.h. decbin(42.02) ergibt 101010, die Binärdarstellung von 42.
Etwas näher könnte man der Sache mit debug_zval_dump() kommen - aber der lügt ebenfalls und sagt nur: `double(42.02)`. Dass da nicht 42.02 in der Variablen steht, sondern
$$\displaystyle \frac{5913789260690883}{140737488355328} = 42.02000000000000312638803734444081783294677734375$$
(danke an [binaryconvert.com](https://www.binaryconvert.com/result_double.html?decimal=052050046048050) und [Wolfram Alpha](https://www.wolframalpha.com/input/?i=10101000000101000111101011100001010001111010111000011_2+%2F+2%5E47)), das verrät er nicht.
Was intern passiert, ist übrigens [längst klar](https://forum.selfhtml.org/self/2020/jun/30/brett-vorm-kopf-finde-den-fehler-nicht/1772768#m1772768).
_Rolf_
--
sumpsi - posui - obstruxi