<?php
// 对 PHP 5 及更高版本可以使用下面的代码
$handle = fopen("http://www.baidu.com", "rb");
$contents = stream_get_contents($handle);
fclose($handle);
echo $contents;
// 对 PHP 5 及更高版本可以使用下面的代码
$handle = fopen("http://www.baidu.com", "rb");
$contents = stream_get_contents($handle);
fclose($handle);
echo $contents;
?>
首先rb并不是一个参数,那么rb是什么呢?先看看php.net上面官方的解释
为移植性考虑,强烈建议在用 fopen() 打开文件时总是使用 'b' 标记。 再一次,为移植性考虑,强烈建议你重写那些依赖于 't' 模式的代码使其使用正确的行结束符并改成'b' 模式。 自 PHP 4.3.2 起,对所有区别二进制和文本模式的平台默认模式都被设为二进制模式。如果你在升级后脚本碰到问题,尝试暂时使用 't' 标记,直到所有的脚本都照以上所说的改为更具移植性以后。 |
我想看后你应该明白了吧~~b是一个修正符,为了代码移植,比如win到linux
在区分二进制文件和文本文件的系统上(如 Windows)打开文件时,fopen() 函数的 mode 参数要加上 'b'。