HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

socket_create_listen
  #1  
Старый 04.06.2009, 16:58
Ru}{eeZ
Постоянный
Регистрация: 19.02.2008
Сообщений: 438
С нами: 9591561

Репутация: 186
По умолчанию socket_create_listen

Почему при обращении к серверу, сервер реагирует только на 1 символ?

PHP код:
<?php
set_time_limit
(120);
$socket socket_create_listen('54321');
if(!
$socket) die('Error');
while(
true) {
  
$client socket_accept($socket);
  
socket_write($client,'Hello, user :)');
  while(
true) {
    
$read trim(socket_read($client,256));
    if(
$read == '!close') break;
    if(
$read == '!exit') {
      
socket_close($socket);
      break 
2;
    }
    
socket_write($client,$read."\n");
  }
  
socket_close($client);
}
socket_close($socket);
?>
Результат следующий:
Код:
Hello, user :)vv
                dd
                  vv
                    dd
                      bb
                        vv
                          bb
                            dd
                              bb

Последний раз редактировалось Ru}{eeZ; 04.06.2009 в 17:08..
 
Ответить с цитированием

  #2  
Старый 04.06.2009, 17:13
Ru}{eeZ
Постоянный
Регистрация: 19.02.2008
Сообщений: 438
С нами: 9591561

Репутация: 186
По умолчанию

Нашёл один из выходов:
Константа PHP_NORMAL_READ в socket_read(), т.е. новая строчка выглядит так: $read = trim(socket_read($client,256,PHP_NORMAL_READ));
 
Ответить с цитированием

  #3  
Старый 04.06.2009, 17:14
Krist_ALL
Banned
Регистрация: 14.01.2009
Сообщений: 515
С нами: 9116877

Репутация: 468


По умолчанию

Очень хорошая статья на эту тему http://i-novice.net/sokety-v-php/ как раз, то что тебе нужно!
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.