fopen()函数 r r+到底有啥区别啊?
fopen(),后面的参数,
比如:r
r+
一个只读模式,一个读写模式,到底有什么区别啊,为什么要创造出个后面这个模式?
能不能通过一个实例让我明白下?
------解决思路----------------------
r ,只能读取fread,不能写入fwrite
r+ ,两者都可以,且是覆盖写入
------解决思路----------------------
$fn = 'abc.txt'; //待操作的文件名

file_put_contents($fn, '12345'); //写入测试数据
readfile($fn); //看一下,内容为 12345

//r 只读模式
$fp = fopen($fn, 'r');
$c = fgetc($fp);
echo $c;
echo fputs($fp, 'a'); //0 没有字符被写入
fclose($fp);
readfile($fn); //看一下,内容为 12345 没有改变

//r+ 读写模式
$fp = fopen($fn, 'r+');
$c = fgetc($fp);
echo $c;
echo fputs($fp, 'a'); //1 写入1个字符
fclose($fp);
readfile($fn); //再看一下,内容为 1a345

登录后复制

------解决思路----------------------
r 只能读取里面的内容,没有权限往文件里面写
r+ 可以往里边写

09-04 07:52