php fopen disabled - 替代需要

时间:2009-11-04 03:37:39

标签: php fopen

我的网络主机刚刚禁用了fopen()

我的脚本用于打开和写入服务器上的文本文件,但不再可以。

是否有替代函数fopen?

4 个答案:

答案 0 :(得分:3)

您可以使用fsockopen()执行此操作。 对我来说这很有效:

$fp = fsockopen("www.example.com", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET / HTTP/1.1\r\n";
    $out .= "Host: www.example.com\r\n";
    $out .= "Connection: Close\r\n\r\n";
    fwrite($fp, $out);
    while (!feof($fp)) {
        echo fgets($fp, 128);
    }
    fclose($fp);
}

不要忘记更改主机和请求参数

答案 1 :(得分:2)

不是我知道的。但它是一个非常安全的功能,可以在共享主机上使用(但只有在环境设置正确的情况下),所以如果您的主机出于安全原因禁用它,那么它们就是安全新手,您应该找到一个新的主机。

无论如何找一个新的

答案 2 :(得分:2)

我认为cURL不需要启用allow_url_fopen。但是,必须安装cURL扩展。使用phpinfo()检查是否已安装。

它比普通fopen()file_get_contents()更先进,但绝对是另类选择。

答案 3 :(得分:1)

如果可用,您可以使用cURL复制脚本

http://us3.php.net/cURL