Hallo und guten Tag,
Offenbar verwendet PHP den ASR Befehl,
Das erklärt einiges.
Wenn Du auf Schieberei verzichtest und lediglich die Bit-Operatoren verwendest (& | und ~), ist alles gut. Wie Du mit 32-bit Integers aus der Präfixlänge eine Subnetzmaske machst, habe ich oben beschrieben (-pow(2, 32-$prefixlaenge)).
Das hatte ich am Anfang gemacht (siehe Posting), aber falsch herum gedacht bei der Maske. Greife ich also nochmal auf und probiere es aus.
Schaun wir also mal...
Grüße
TS