Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php中file()函数与fgets()函数的共同与不同

php中file()函数与fgets()函数的共同与不同

怪我咯
怪我咯asal
2017-07-11 09:42:341322semak imbas

最近写php代码需从文本文件读取文本行(文本文件是ANSI字符集

php的2个内置函数 file 和 fgets 可以实现这个功能

file — 把整个文件读入一个数组

fgets — 从文件指针中读取一行

共同点:二者读取的每一个文本行末尾都包含一个换行符(读取使用ANSI字符集的文本这两个字符各占一个字节,若把文本文件转换成utf-8字符集则结果不同,未测试);

不同点:以上说的是换行符以 \n输入,若换行以\r\n输入,那么file会读入\r\n,fgets会处理掉\r保留\n,\r与\n用ord()函数显示出的ascii码值分别是13与10。

以上都使用ANSI字符集文本测试。

用fwrite()往文本文件写入时有个奇怪的现象, fopen()用‘wt’打开,写入“\r\n”后,用16进制编辑器打开文本文件会发现换行处代码为cr cr lf(\r\r\n),而用‘w’方式打开则正常“\r\n”。

Atas ialah kandungan terperinci php中file()函数与fgets()函数的共同与不同. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn