За последние 24 часа нас посетили 19173 программиста и 1644 робота. Сейчас ищут 860 программистов ...

fsockopen

Тема в разделе "PHP для новичков", создана пользователем Klin, 25 май 2008.

  1. Klin

    Klin Активный пользователь

    С нами с:
    15 май 2008
    Сообщения:
    82
    Симпатии:
    0
    PHP:
    1. <?php
    2. $fp = fsockopen("ws.darkagesworld.com", 80);
    3. fputs($fp, "GET /info.asmx/GetUserInfo?nick=string HTTP/1.1\r\n");
    4. fputs($fp, "Host: ws.darkagesworld.com\r\n");
    5. fputs($fp, "Connection: close\r\n");
    6. fputs($fp, "\r\n");
    7. echo "<pre>";
    8. while (!feof($fp))
    9. echo iconv('UTF-8','cp1251', htmlspecialchars(fgets($fp, 1000)));
    10. echo "</pre>";
    11. fclose($fp);
    12. ?>
    Как сохранить результат в файл?
     
  2. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    В цикле не выводить, а писать в переменную, либо в файл построчно.
     
  3. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    file_put_content(), кажется так...
     
  4. Klin

    Klin Активный пользователь

    С нами с:
    15 май 2008
    Сообщения:
    82
    Симпатии:
    0
    topas

    Спасибо, помогло. Вот что получилось:


    PHP:
    1. <?php
    2. $fp = fsockopen("ws.darkagesworld.com", 80, $errno, $errstr, 30);
    3. if (!$fp) {
    4.     echo "$errstr ($errno)<br />\n";
    5. } else {
    6.     $out = "GET /info.asmx/GetUserInfo?nick=string HTTP/1.1\r\n";
    7.     $out .= "Host: ws.darkagesworld.com\r\n";
    8.     $out .= "Connection: Close\r\n\r\n";
    9.    
    10.     fwrite($fp, $out);
    11.     $filename = 'test.txt';
    12.     file_put_contents($filename, $fp);
    13.     fclose($fp);
    14. }
    15. ?>
    Kreker

    Как записать в переменную?
     
  5. lexa

    lexa Активный пользователь

    С нами с:
    22 июл 2007
    Сообщения:
    1.746
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    Код (Text):
    1. $lol .= fgets($fp, 1000);
    P.S. Ааааа! Что с форумом?! Третий топик и третий чайник кошмарнейший. Это моя карма. (на хабре, ыгыгы)
     
  6. Professor

    Professor Активный пользователь

    С нами с:
    2 янв 2008
    Сообщения:
    121
    Симпатии:
    0
    Адрес:
    г. Одесса, Украина
    Самое интересное, работа с СОКЕТАМИ, что не каждый опытный программист знает, по ненадобности, а как сохранить вывод цикла в переменную и записать в файл - не знает)
    З.Ы.: никого не пытался обидеть.
    З.Ы.Ы.: И не хотел.
    З.Ы.Ы.Ы.: И надеюсь не обидел.