0

这是我的代码。和功能不起作用ob_flush()flush()为什么?

<?php
function get_headers_curl($url)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,            $url);
    curl_setopt($ch, CURLOPT_HEADER,         true);
    curl_setopt($ch, CURLOPT_NOBODY,         true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT,        4);
    $r = curl_exec($ch);
    $r = split("\n", $r);
    return $r;
} 

$urls = file('users.txt', FILE_IGNORE_NEW_LINES);
foreach ($urls as $url) {
    $headers = get_headers_curl(trim($url));
    if (false !== stripos(implode("\n", $headers), "Apache")) {
        echo "$url ====> ok" ;
        ob_flush();
        flush();
    }
}
?>
4

1 回答 1

0

如果您在使用 flush 命令时遇到问题,则需要检查一些事项。

在 php.ini 文件(或 ht 访问,甚至在脚本中)设置以下值

output_buffering 0
zlib.output_compression = Off
zlib.output_compression_level = -1

default_charset = "utf-8"

我还注意到您的代码中没有 ob_start

于 2012-07-20T23:38:55.500 回答