Функции gzXXX () и fXXX () после gzopen () - PullRequest
1 голос
/ 01 ноября 2019

У меня есть приложения, которые открывают и обрабатывают файлы gzip, например:

$fh = gzopen($fn, "r");
if ($fh) {
    while ($line = fgets($fh)) {
        ...
    }
}

, и все работает нормально, используя fgets() с дескриптором файла gzip. Сегодня, отвечая на другой вопрос , я заметил, что есть также gz версии всех функций чтения и записи файлов, так что это можно было бы записать как

$fh = gzopen($fn, "r");
if ($fh) {
    while ($line = gzgets($fh)) {
        ...
    }
}

ТакжеЯ только что попробовал следующее, и это сработало:

$fh = fopen(".bashrc", "r");
$line = gzgets($fh);
echo $line;

Так есть ли какая-либо существенная разница между функциями gzXXX() и fXXX(), которые читают и пишут, или они просто синонимы, и разницаопределяется тем, как файл открывается (и что еще больше запутает, gzopen() также откроет файлы, не относящиеся к gzip, и затем прочитает их без распаковки).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...