PHP Doku:: Read entire gz-file into an array - function.gzfile.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzErweiterungen zur Datenkompression und ArchivierungZlib-KomprimierungZlib-Funktionengzfile

Ein Service von Reinhard Neidl - Webprogrammierung.





(PHP 4, PHP 5)

gzfileRead entire gz-file into an array


array gzfile ( string $filename [, int $use_include_path = 0 ] )

Diese Funktion entspricht weitgehend readgzfile(), gibt die Datei aber in einem Array zurück.



Der Dateiname.


Sie können diesen optionalen Parameter auf 1 setzen wenn Sie die Datei auch im include_path suchen lassen wollen.


Ein Array das die Zeilen der Datei als Elemente enthält.


Beispiel #1 gzfile() example

foreach (
$lines as $line) {

Siehe auch

4 BenutzerBeiträge:
- Beiträge aktualisieren...
jani at php dot net
21.11.2008 19:11
This function is not binary safe. (intentionally, or not, that's the question :)
nb_nonospamm_ at wtal dot de
27.11.2005 13:12
In PHP4.4.1 I noticed that gzfile only reads up to 8190 bytes per line. I had a 20K SQL query that was cut into 3 parts - and wondered why the SQL server complained.

Reading an uncompressed file with the file() command works as expected.
The Jedi
28.06.2005 15:44
A quicker way to load a gziped file in a string :
function gzfile_get_contents($filename, $use_include_path = 0)
//File does not exist
if( !@file_exists($filename) )
    {    return
false;    }
//Read and imploding the array to produce a one line string
$data = gzfile($filename, $use_include_path);
$data = implode($data);
webmaster at ragnarokonline dot de
13.01.2004 20:58
This works similar to gzfile() but it returns the file in a string instead of an array and doesn't write it to stdout compared to readgzfile.

Note: unlike the usual file-functions filesize won't work here, since the length-parameter of gzread refers to the uncompressed length, while filesize returns the size of the compressed file.

function gzfile_get_contents($filename, $use_include_path = 0) {
$file = @gzopen($filename, 'rb', $use_include_path);
    if (
$file) {
$data = '';
        while (!
gzeof($file)) {
$data .= gzread($file, 1024);

PHP Powered Diese Seite bei
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)