Я написал одно приложение в php, которое использует сокеты. Внезапно возникла необходимость запускать его на окнах, перед этим это было только на Linux без проблем.Какая разница с сокетом в окнах с использованием php?
В настоящее время проблема находится в socket_recv
функция, которая используется как $bytes = @socket_recv($socket, $data, 2048, MSG_DONTWAIT);
. Прежде всего, на окнах нет никакого MSG_DONTWAIT
констант, так как я об этом узнал. Я нашел небольшое исправление для него нравится:
if (!defined('MSG_DONTWAIT'))
define('MSG_DONTWAIT', 0x40);
Тогда он говорит:
Warning: socket_recv(): unable to read from socket [0]: The operation completed
successfully.
После того, как я решил спросить, может быть есть какая-то разница с работы с сокетами на Windows, и Linux?
по умолчанию я использовать AF_INET – Kin
же здесь, я также использовать AF_INET по умолчанию на сервере WAMP с PHP 5.4 –