Der Ansatz liefert falsche Ergebnisse, wenn die Netzmasken andere sind als 8, 16 und 24.
Sorry, hatte nicht darüber nachgedacht, ob es die gibt. Dann muss man es anders angehen, ja.
Außerdem ging es doch hauptsächlich darum, verschachtelte foreach zu vermeiden.
Und da gilt ein Umstellen des Arrays $a
nicht?