何时该用readfile() , fread(), file_get_contents(), fgets()?

fread() 和 readfile()
fread() 最大一次性能读取 8k长度的字节数,因此不能一次性读取大文件去做下载。 优点在于,操做更加灵活,每次读取指定字节的内容,用于下载时方便控制服务器的流量。
readfile() 优点是可以一次性读取大文件;不须要PHP预读到内存,下载速度更快,直接把文件的处理交由服务器。缺点就是不能控制负载。因此它是没有内存限制的,若是遇到报内存错误,先调用 ob_end_flush()之类的函数关闭缓冲区。
file_get_contents 也是没 readfile()快, 由于也是走了php的内存。可是在读取小文本内容到字符串变量时,这个函数最适合使用,简单,更快。
fgets() 是一次读取文件中的一行了,再须要逐行处理文件的时候,使用这个php

相关文章
相关标签/搜索