我是PHP的新手,我不太确定:file(),file_get_contents()和fopen()函数有什么区别,什么时候应该使用另一个?
解决方法:
前两个,file
和file_get_contents
非常相似.它们都读取整个文件,但文件将文件读入数组,而file_get_contents将其读入字符串.文件返回的数组将由换行符分隔,但每个元素仍然会附加终止换行符,因此您仍需要注意这一点.
fopen
函数完全不同 – 它打开一个文件描述符,它用作读取或写入文件的流.它是一个更低级别的函数,一个围绕C fopen函数的简单包装器,简单地调用fopen除了打开一个流之外什么都不做.
打开文件句柄后,可以使用fread
和fwrite
等其他函数来操作句柄引用的数据,一旦完成,就需要使用fclose
关闭流.这些给你更精细地控制您正在阅读的文件,如果您需要原始二进制数据,您可能需要使用它们,但通常您可以坚持使用更高级别的功能.
所以,回顾一下:
> file – 将整个文件内容读入一行数组.
> file_get_contents – 将整个文件内容读入字符串.
> fopen – 打开一个文件句柄,可以使用其他库函数进行操作,但不会自行读取或写入.