PHP workshop for 2 days with Shopware, Sylius, PHPUnit and Codeception in Duisburg

gzfile

(PHP 4, PHP 5, PHP 7, PHP 8)

gzfileGzipli dosyayı bir dizi içinde döndürür

Açıklama

gzfile(string $dosyaismi, int $include_path_kullan = 0): array|false

Dosyanın içeriğini bir dizide döndürmesi dışında readgzfile() ile aynıdır.

Değiştirgeler

dosyaismi

Okunacak dosyanın ismi.

include_path_kullan

Bu isteğe bağlı değiştirgeyle 1 değerini aktarırsanız dosyanın include_path yönergesindeki yollarda da aranmasını sağlamış olursunuz.

Dönen Değerler

Her elemanında bir satır içermek üzere dosyayı içeren dizi ile döner. Boş satırlar dahildir ve satırsonu karakterleri kaldırılmaz, başarısızlık durumunda false döner.

Örnekler

Örnek 1 - gzfile() örneği

<?php
$satırlar 
gzfile('birdosya.gz');
foreach (
$satırlar as $satır) {
    echo 
$satır;
}
?>

Ayrıca Bakınız

add a note add a note

User Contributed Notes 4 notes

up
3
nb_nonospamm_ at wtal dot de
15 years ago
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.
up
3
The Jedi
16 years ago
A quicker way to load a gziped file in a string :
<?php
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);
   return
$data;
}
?>
up
1
jani at php dot net
12 years ago
This function is not binary safe. (intentionally, or not, that's the question :)
up
0
webmaster at ragnarokonline dot de
17 years ago
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.

<?php
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);
        }
       
gzclose($file);
    }
    return
$data;
}
?>
To Top