请问SplFileObject不能读写同时进行嘛?

WBOY
Freigeben: 2016-06-06 20:49:49
Original
1140 Leute haben es durchsucht

代码如下:

<code>$file = new \SplFileObject($path->get(), 'w');
$file->fwrite('UUUaaaaOA323423482739S');
$file->rewind();
echo $file->fgets();
exit;
</code>
Nach dem Login kopieren
Nach dem Login kopieren

结果如下:

  1. 数据已成功写入指定文件
  2. 但是echo fgets()却是空的字符串

修改代码,去掉初始方法中的参数'w',如下:

<code>$file = new \SplFileObject($path->get());
$file->fwrite('----------UUUaaaaOA323423482739S');
$file->rewind();
echo $file->fgets();
exit;
</code>
Nach dem Login kopieren
Nach dem Login kopieren

结果如下:

  1. 数据写入失败
  2. 但是echo fgets()可以获取之前写入的数据

请问SplFileObject不能读写同时进行嘛?

回复内容:

代码如下:

<code>$file = new \SplFileObject($path->get(), 'w');
$file->fwrite('UUUaaaaOA323423482739S');
$file->rewind();
echo $file->fgets();
exit;
</code>
Nach dem Login kopieren
Nach dem Login kopieren

结果如下:

  1. 数据已成功写入指定文件
  2. 但是echo fgets()却是空的字符串

修改代码,去掉初始方法中的参数'w',如下:

<code>$file = new \SplFileObject($path->get());
$file->fwrite('----------UUUaaaaOA323423482739S');
$file->rewind();
echo $file->fgets();
exit;
</code>
Nach dem Login kopieren
Nach dem Login kopieren

结果如下:

  1. 数据写入失败
  2. 但是echo fgets()可以获取之前写入的数据

请问SplFileObject不能读写同时进行嘛?

我懂了,这个和文件打开模式有关系,

  • 打开模式为w,那么就是只写,不读
  • 打开模式为r,那么就是只读,不写
  • 打开模式为w+,那么指针就是在文件开头处读写
  • 打开模式为a+,那么指针就是在文件末尾处读写
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage