Datentypen in PHP 32 Bit
bearbeitet von
Hallo TS,
da PHP Dich in die gleiche Falle laufen lässt wie ein C Compiler, hast Du wohl keine andere Wahl. Dabei kann PHP mit float durchaus größere Zahlen als 2^31 exakt darstellen (bis zu 46 Bits) - long2ip ist in der 32-bit Version einfach nur blöd implementiert. Auf der PHP.NET Seite zu long2ip steht so ein blöder Tipp - man solle den Input für long2ip einfach nach float casten. Das ist Nonsense, damit funktioniert es dann konsequent gar nicht mehr.
A-bär, andersrum gecastet wird's was:
`$ip = long2ip((int)bindec($bitString));`
Gerade mit PHP 7.3 32bit probiert. Funktioniert 1:1 identisch unter 32- und 64-bit PHP.
_Rolf_
--
sumpsi - posui - obstruxi