Помогите поправить 2 php функции

Тема в разделе "PHP", создана пользователем shamantc, 22 июн 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. shamantc

    shamantc ЗлОй ШаМан

    Заблокирован
    Регистр.:
    3 ноя 2008
    Сообщения:
    655
    Симпатии:
    184
    Здравствуйте вот такая ситуация, имеется 2 функции в одной из них ошибка (лог ошибок чистый, но мне раз уже правили этот код здесь что то с циклами в функции daemon мне тогда закомментировали пару строк и все работало)
    PHP:
      function daemon ($a$param ''$post 0)
      {
        global 
    $CRoom;
        global 
    $Cookie;
        
    $try 5;
        while (
    true)
        {
          
    $s = @fsockopen ('127.0.0.1'CHAT_PORT$e$e2);
          if (!(
    $s))
          {
            if (--
    $try == 0)
            {
              return 
    false;
            }

            continue;
          }
        }

        list (
    $ip$proxy) = getip ();
        if (
    is_array ($Cookie))
        {
          foreach (
    $Cookie as $Var => $Val)
          {
            
    $cv .= $Var '=' urlencode ($Val) . '; ';
          }
        }

        
    $h 'Cookie: ' $cv;
        
    $param 'a=' $a '&&r=' $CRoom '&ip=' $ip '&proxy=' $proxy '&d=1248421&' $param;
        if (
    $post)
        {
          
    fwrite ($s'POST /august HTTP/1.0
    Content-Length: ' 
    strlen ($param) . ('
    $h '

    $param '
    '
    ));
        }
        else
        {
          
    fwrite ($s'GET /august?' $param ' HTTP/1.0
    $h '

    '
    );
        }

        while (!(
    feof ($s)))
        {
          
    $r .= fread ($s8192);
        }

        
    fclose ($s);
        return 
    $r;
      }

      function 
    config ()
      {
        
    $Args func_get_args ();
        
    $Args implode (' '$Args);
        
    $try 3;
        while (
    $try--)
        {
          
    $d daemon (35'args=' $Args);
          if (
    $d)
          {
            if (
    $r unserialize ($d))
            {
              return 
    $r;
            }
          }

          
    sleep (1);
        }

        exit (
    '<hr>Ошибка загрузки конфигурации');
      }
    Помогите подправить :thenks:
     
  2. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
    как минимум заменить

    PHP:
    while (true
    на
    PHP:
    while (!$s
    или получается что цикл выполнится 5 раз и закончится выходом из процедуры, без дальнейшей обработки данных
     
Статус темы:
Закрыта.