在php中压缩数据并在javascript中解压缩

时间:2011-07-03 08:17:40

标签: php javascript compression

Greerings all

有没有办法压缩从php(服务器)发送的数据,然后使用javascript(客户端)解压缩数据?

感谢你

3 个答案:

答案 0 :(得分:6)

我必须同意@Domenic的答案。 @Nishchay Sharma离开了。

我要添加的唯一内容是,如果您希望在每个脚本的基础上执行此操作而不是将整个服务器配置为压缩所有内容,那么使用PHP&#39实现目标是微不足道的。 ; s gzencode()函数加上标题调用:

http://www.php.net/manual/en/function.gzencode.php

例如,假设您正在通过对PHP页面的Ajax调用来检索大量数据。您可以将PHP页面配置为使用gzencode,如下所示:

<?php
$someBigString = gzencode('blahblah...blah');

header("Content-type: text/javascript");
header('Content-Encoding: gzip'); 

echo $someBigString;  
?>

(当然,这个过于简化,但我保持简单。)

您的JS Ajax调用将拉下数据,查看gzip标头,并自动解压缩。我个人将这种技术用于Google Maps的非常大的地理坐标数据集,在未压缩时可以达到几兆字节。这不容易!

答案 1 :(得分:2)

是;如果您将服务器配置为提供数据,希望您使用GZIP压缩以JSON等理智格式发送数据,那么您只需在JavaScript中执行Ajax调用,它就会被浏览器自动解压缩。

要进行此设置,请将these lines复制到.htaccess文件中。 (我假设您正在使用Apache,因为这是提供PHP的最常用平台。)

答案 2 :(得分:1)

如果您的回复开销尽可能小,那么您的目标JSON DB: a compressed JSON format可能也会引起您的兴趣。