Поскольку в этом классе нет методов, вы можете закодировать экземпляр с помощью json_encode
и отправить его как строку. на стороне клиента просто декодировать и клонировать. это может быть сделано также, когда класс имеет методы, с большим количеством осложнений.
Пример:
//server
$p = new Packet;
socket_sendto($sock, json_encode($p), strlen($p), 0, $ip, $port);
//client
socket_recvfrom($sock, $buf, $size, 0, $ip, $port);
$p = clone json_decode($bof); //class without methods
$p = new Packet;
$p->setAs(json_decode($bof)); //class with methods: implement this method too.
Edit:
Теперь я вижу, что ваши поля private
, так что вам нужно реализовать метод кодирования JSon. см. https://stackoverflow.com/a/7005915/2075420 и https://stackoverflow.com/a/9942303/2075420.