検索

ホームページ  >  に質問  >  本文

php fsockopen 出错

使用官方例子:

<?php
set_time_limit(0);
$fp = fsockopen("www.t.com", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET /t2.php HTTP/1.1\r\n";
    $out .= "Host: www.t.com\r\n";
    $out .= "Connection: Close\r\n\r\n";
    fwrite($fp, $out);
    var_dump(fgets($fp));
    fclose($fp);
}
?>

运行环境:Windows。

运行后输出:boolean false

多次尝试,一直报错,为什么这代码跑不起来呢?

PHPzPHPz2774日前456

全員に返信(1)返信します

  • 黄舟

    黄舟2017-04-11 10:31:11

    换个地址吧,没这个域名的信息,换成segmentfault.com就没问题。

    <?php
    set_time_limit(0);
    $fp = fsockopen("www.segmentfault.com", 80, $errno, $errstr, 30);
    if (!$fp) {
        echo "$errstr ($errno)<br />\n";
    } else {
        $out = "GET /index.html HTTP/1.1\r\n";
        $out .= "Host: www.segmentfault.com\r\n";
        $out .= "Connection: Close\r\n\r\n";
        fwrite($fp, $out);
        var_dump(fgets($fp));
        fclose($fp);
    }
    ?>

    结果:
    string(20) "HTTP/1.1 302 Found "
    如果不行,要考虑环境问题了。

    返事
    0
  • キャンセル返事