флоппик
Скажи пожалуйста, чему равен размер типа int(или любого другого) в байтах? Если думаешь, что 4 или какое-либо определенное число, то нет. В стандарте написано, что это зависит от реализации и дано только указание на то, как должны соотноситься размеры разных типов. Так что различия аппаратных платформ С++ скрывает далеко не везде.
Что касается темы, то я думаю что поведение php является верным, но почему-то не достаточно документированным. В имени функции ip2long прописано в какой тип преобразуется ip-адрес, но никто, ни разработчики PHP, ни стандарт С не может гарантировать размер типа long на различных платформах. По этому и всплывают такие платформенно-зависимые вещи.
Что касается программирования сети на С в никсах, то в стандартной библиотеке для представления адресов используются специальный типы и функции, а в какой тип эти typedef'ы развернуться на конечной платформе это уже заботы тех, кто писал стандартную библиотеку, а не тех, кто писал прикладные программы.