Alix Axel Alix Axel - 3 months ago 35
PHP Question

fgets() and fread() - What is the difference?

I understand the differences between

but I don't get the difference between
, can someone please clarify this subject? Which one is faster? Thanks!


fgets reads a line -- i.e. it will stop at a newline.

fread reads raw data -- it will stop after a specified (or default) number of bytes, independently of any newline that might or might not be present.

Speed is not a reason to use one over the other, as those two functions just don't do the same thing :

  • If you want to read a line, from a text file, then use fgets
  • If you want to read some data (not necessarily a line) from a file, then use fread.