在PHP fopen函数中,w和w +模式之间的区别是什么?

时间:2016-03-15 15:15:57

标签: php

我已经阅读了manaul,并且知道w +写和读,只能写。但是怎么理解呢?

$file_name =  $_SERVER['DOCUMENT_ROOT']."/../data/test.txt";  //file is exist
$fp = fopen($file_name, 'w+');
fwrite($fp, 'hello, world!');
$len = filesize($file_name); 
echo $len; //13
$contents = fread($fp, $len);
var_dump($contents);//string(0) ""    why?
fclose($fp);

1 个答案:

答案 0 :(得分:1)

两个选项 w w + 在使用fopen打开时截断文件。不同之处在于,您可以准确读取在使用文件的当前会话期间编写的内容(我的意思是fopen-> fwrite-> fread(不会为空) - > fclose)。因此,如果您尝试阅读使用 w w + =打开的文件,则两种情况下的结果都应为空