Ответ 1
Вам нужно будет установить (или включить) расширение Socket PHP: http://www.php.net/manual/en/sockets.installation.php
Мой код выглядит так:
if( ($this->master=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)) < 0 )
{
die("socket_create() failed, reason: ".socket_strerror($this->master));
}
когда я запускаю свой php файл, который создает соединение с веб-сокетом, я получил ошибку Неустранимая ошибка: вызов функции undefined function socket_create() в строке if (($ this- > master = socket_create (AF_INET, SOCK_STREAM, SOL_TCP)) < 0)
Поэтому я не могу подключить веб-сокет, а также не могу получить ответное сообщение от сокета, потому что Socket Status: 3 (Closed) отображается в моем браузере при запуске клиентской страницы.
У вас есть идея, чего не хватает? Заранее благодарю вас.
Вам нужно будет установить (или включить) расширение Socket PHP: http://www.php.net/manual/en/sockets.installation.php
Для типичной установки XAMPP в Windows у вас, вероятно, есть php_sockets.dll в каталоге C:\xampp\php\ext. Все, что вам нужно сделать, это перейти в php.ini в каталог C:\xampp\php и изменить ;extension=php_sockets.dll
на extension=php_sockets.dll
.
Выполните следующие действия, если вы используете openSuse или SUSE.
Установите php7, если он еще не установлен.
zypper in php7
Если у вас установлен php7, обновите его:
zypper update php7
Установите php7-сокеты
zypper in php7-sockets
Откройте файл php.ini
в вашей серверной среде и удалите ;
из ;extension=sockets
. если это не работает, вам нужно скачать расширение socket
для PHP и поместить его в каталог ext
в пути установки php. Перезагрузите http-сервер, и все должно работать.
Если вы используете xampp 7.3.9. сокет уже установлен. Вы можете проверить xampp\php\ext и получить php_socket.dll. если он у вас есть, перейдите в панель управления xampp, откройте файл php.ini и удалите (;) из extension = sockets.