Подтвердить что ты не робот

Неустранимая ошибка: вызов функции undefined socket_create()

Мой код выглядит так:

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) отображается в моем браузере при запуске клиентской страницы.

У вас есть идея, чего не хватает? Заранее благодарю вас.

4b9b3361

Ответ 2

Для типичной установки XAMPP в Windows у вас, вероятно, есть php_sockets.dll в каталоге C:\xampp\php\ext. Все, что вам нужно сделать, это перейти в php.ini в каталог C:\xampp\php и изменить ;extension=php_sockets.dll на extension=php_sockets.dll.

Ответ 3

Выполните следующие действия, если вы используете openSuse или SUSE.

Установите php7, если он еще не установлен.

zypper in php7

Если у вас установлен php7, обновите его:

zypper update php7

Установите php7-сокеты

zypper in php7-sockets

Ответ 4

Откройте файл php.ini в вашей серверной среде и удалите ; из ;extension=sockets. если это не работает, вам нужно скачать расширение socket для PHP и поместить его в каталог ext в пути установки php. Перезагрузите http-сервер, и все должно работать.

Ответ 5

Если вы используете xampp 7.3.9. сокет уже установлен. Вы можете проверить xampp\php\ext и получить php_socket.dll. если он у вас есть, перейдите в панель управления xampp, откройте файл php.ini и удалите (;) из extension = sockets.