Разница между потоковыми функциями fread и fgets в PHP заключается в том, что fread читает данные из файла в бинарно-безопасном режиме, а fgets — строку за строкой. 25
fread принимает в качестве параметров идентификатор указателя файла и размер файла в байтах. 4 Чтение данных происходит до тех пор, пока не встретится конец файла или пока не будет прочитано указанное число байтов. 2 В результате работы функция fread возвращает строку со считанной из файла информацией. 2
fgets возвращает строку длиной (длина-1) байт из файла, на который указывает указатель на файл. 2 Чтение заканчивается, если прочитано (длина-1) символов или встретился символ перевода строки или конец файла. 2 Если длина считываемой строки не указана, то считывается 1 Кбайт (1024 байт) текста или, что то же самое, 1024 символа. 2
Таким образом, fread используется для чтения некоторых или всех данных из файла, а fgets — для чтения строки из файла. 1