- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
<?php
header('Content-Type: text/plain;'); //Мы будем выводить простой текст
set_time_limit(0); //Скрипт должен работать постоянно
ob_implicit_flush(); //Все echo должны сразу же отправляться клиенту
$address = 'localhost'; //Адрес работы сервера
$port = 1985; //Порт работы сервера (лучше какой-нибудь редкоиспользуемый)
if (($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) < 0) {
//AF_INET - семейство протоколов
//SOCK_STREAM - тип сокета
//SOL_TCP - протокол
echo "Ошибка создания сокета";
}
else {
echo "Сокет создан\n";
}
//Связываем дескриптор сокета с указанным адресом и портом
if (($ret = socket_bind($sock, $address, $port)) < 0) {
echo "Ошибка связи сокета с адресом и портом";
}
else {
echo "Сокет успешно связан с адресом и портом\n";
}
//Начинаем прослушивание сокета (максимум 5 одновременных соединений)
if (($ret = socket_listen($sock, 5)) < 0) {
echo "Ошибка при попытке прослушивания сокета";
}
else {
echo "Ждём подключение клиента\n";
}
do {
//Принимаем соединение с сокетом
if (($msgsock = socket_accept($sock)) < 0) {
echo "Ошибка при старте соединений с сокетом";
} else {
echo "Сокет готов к приёму сообщений\n";
}
$msg = "Hello!"; //Сообщение клиенту
echo "Сообщение от сервера: $msg";
socket_write($msgsock, $msg, strlen($msg)); //Запись в сокет
//Бесконечный цикл ожидания клиентов
do {
echo 'Сообщение от клиента: ';
if (false === ($buf = socket_read($msgsock, 1024))) {
echo "Ошибка при чтении сообщения от клиента"; }
else {
echo $buf."\n"; //Сообщение от клиента
}
//Если клиент передал exit, то отключаем соединение
if ($buf == 'exit') {
socket_close($msgsock);
break 2;
}
if (!is_numeric($buf)) echo "Сообщение от сервера: передано НЕ число\n";
else {
$buf = $buf * $buf;
echo "Сообщение от сервера: ($buf)\n";
}
socket_write($msgsock, $buf, strlen($buf));
} while (true);
} while (true);
//Останавливаем работу с сокетом
if (isset($sock)) {
socket_close($sock);
echo "Сокет успешно закрыт";
}
?>
3_dar 23.03.2016 17:47 # +1
Vasiliy 23.03.2016 17:57 # 0
{
. . . . .
} while (true);
} while (true);
В этом на верное
nihau 23.03.2016 18:17 # +3
кажется с швабры
KEKC 25.03.2016 03:09 # 0
HiNeX 23.03.2016 18:01 # +5
kegdan 23.03.2016 18:03 # +1
HiNeX 23.03.2016 19:02 # 0
kegdan 23.03.2016 19:07 # 0
gost 23.03.2016 20:07 # 0
inkanus-gray 24.03.2016 22:26 # +6
guest 24.03.2016 23:59 # −4
kegdan 25.03.2016 00:15 # 0
inkanus-gray 25.03.2016 00:19 # +1
Steve_Brown 25.03.2016 11:48 # 0
gost 23.03.2016 20:08 # +2
Vasiliy 24.03.2016 12:15 # +6
naxoM 24.03.2016 22:11 # +2
guest 24.03.2016 23:34 # −6
Alex89 07.04.2016 16:49 # −1
guest 25.03.2016 20:49 # −2
guest 24.04.2017 23:26 # −5
guest 25.04.2017 00:36 # −5
guest 25.04.2017 14:15 # −5
guest 25.04.2017 20:11 # −5
TeaBag 26.04.2017 21:51 # −5
guest 02.05.2017 05:33 # −5
guest 02.05.2017 16:25 # −5
guest 30.05.2017 01:29 # 0
guest 30.05.2017 02:25 # 0
guest 30.05.2017 03:35 # 0
guest 30.05.2017 04:34 # 0
guest 30.05.2017 11:45 # 0
guest 30.05.2017 12:09 # 0
guest 30.05.2017 13:47 # 0
guest 30.05.2017 17:45 # 0
guest 30.05.2017 22:59 # 0
guest 01.06.2017 23:56 # 0
guest 02.06.2017 00:48 # 0
guest 02.06.2017 01:01 # 0
guest 02.06.2017 04:05 # 0
guest 02.06.2017 06:23 # 0
guest 02.06.2017 09:48 # 0
guest 02.06.2017 11:19 # 0
guest 02.06.2017 14:15 # 0
guest 02.06.2017 16:06 # 0
guest 02.06.2017 16:53 # 0
guest 02.06.2017 18:44 # 0
guest 02.06.2017 22:23 # 0
guest 03.06.2017 03:22 # 0
guest 03.06.2017 06:38 # 0
guest 03.06.2017 10:45 # 0
guest 03.06.2017 14:46 # 0
guest 03.06.2017 20:53 # 0
guest 03.06.2017 22:23 # 0
guest8 26.12.2018 13:44 # −999
Sers 27.12.2018 02:21 # 0
Доставка по России. Анонимно.
[email protected]
Sers 27.12.2018 02:21 # 0
Доставка по России. Анонимно.
[email protected]
rajluTo3Huk 28.12.2018 19:25 # 0
guest8 28.12.2018 13:10 # −999
guest8 04.01.2019 10:38 # −999
guest8 04.01.2019 10:42 # −999
guest8 04.01.2019 10:43 # −999