Как писать коды сокетов через переполнение стека

Я написал следующий код на PHP

<?php
$mysocket = socket_create(AF_INET, SOCK_STREAM , 0);
socket_bind($mysocket, '127.0.0.1',1024);
socket_listen($mysocket) or die("unable to listen!");
socket_connect($mysocket , '127.0.0.1' , 1024);?>

и появилась ошибка говорит «

Предупреждение: socket_connect (): невозможно подключиться [102]: Операция не поддерживается для сокета в /Applications/XAMPP/xamppfiles/htdocs/SOCKTEST.php в строке 5 «

В чем проблема?

2

Решение

Я не знаю цель вашего кода. Но вот отличный учебник по программированию сокетов в PHP.

https://www.christophh.net/2012/07/24/php-socket-programming/

Я проверил ваш код. Ошибка возникает, если вы привязываете свой сокет и адрес

$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_bind($sock, '127.0.0.1');
socket_connect($sock, '127.0.0.1', 1337);
socket_close($sock);

http://php.net/manual/de/function.socket-bind.php

Пример из документации PHP. Возможно, будет лучше, если вы используете разные экземпляры для проверки своей проблемы, если вы можете подключиться через сеть к другому экземпляру или компьютеру. Для этого вы можете использовать Vagrant, например.

1

Другие решения

Серверы слушают и принимают, клиенты подключаются. Одна и та же конечная точка сокета не может быть одновременно сервером (прослушивать) и клиентом (подключаться)

0

По вопросам рекламы ammmcru@yandex.ru