2011-03-11 137 views
1

我有一个PHP脚本,它使用fopen()fwrite()从我站点的数据库生成一个动态PHP站点地图到一个xml文件。GZ用PHP压缩一个XML站点地图文件

如何在我写入时动态使用GZ压缩来压缩此文件?

我试过fwrite() -ing字符串,我通过gzcompress()运行到文件中并将其重命名为“.xml.gz”,但它似乎不是它的文件;它的创建是一个成熟的归档。

回答

3

不使用fopen和fwrite,而是使用gzopen()gzwrite()应该为你做。

从手册:

# Sample #1 gzwrite() example 
<?php 
$string = 'Some information to compress'; 
$gz = gzopen('somefile.gz','w9'); 
gzwrite($gz, $string); 
gzclose($gz); 
?> 

如果我理解正确

+0

我认为他想压缩源代码,但只有他自己知道他想要什么笑:) – Val 2011-03-11 15:55:59

1

这是从PHP的网站,我们都应该记住的报价。

注意2010年11月07日08:50仔细阅读gzwrite()的描述非常 。如果未指定“长度”选项,则在启用了魔术引号 的系统上,输入 数据将具有斜线。这是压缩 文件时知道的重要信息。

http://php.net/manual/en/function.gzwrite.php

+0

哈,我想我知道所有的理由去恨magic_quotes的...还有一种暴行。如果我见过一个,那他们是一个非常糟糕的主意...... – Wrikken 2011-08-02 00:46:28