JavaScript字符串压缩+ PHP解压缩

时间:2013-10-21 13:23:49

标签: javascript php string compression jsonp

我正在寻找一种在JavaScript中压缩字符串的解决方案,使用GET(jsonp)发送它,然后使用PHP解压缩。最好的方法是拥有快速代码和良好的压缩效果。

我找到了lz-string库,但看起来它没有PHP后端。任何其他类似的库或lz-string的PHP实现?

2 个答案:

答案 0 :(得分:0)

对于客户端javascript压缩,请检查此deflate实现:

https://github.com/dankogai/js-deflate

要解压缩PHP端,您只需要gzinflate()

<强>陷阱

  1. 如果您想将压缩数据从客户端发布到服务器,那么首先对它进行base64编码可能是个好主意。 在服务器端,您必须调用gzinflate(base64_decode($ post_body));

  2. javascript deflate实现或PHP inflate实现都不是100%正确有时,很少,gzinflate会返回错误。这意味着如果沿着这条路走下去,你应该有一些回退机制,例如:尝试POST压缩数据。如果它无法回退到未压缩的数据。

  3. 保持压缩级别下降或者您必须遇到javascript超时错误

  4. 如果您计划压缩大量数据(100 + KB),可能在较旧的浏览器上(IE <= 9),您需要拆分主deflate循环以使其异步(使用setTimeout)一次处理较小的数据块。理想情况下,每个块都不应该让JS解释器忙碌超过100毫秒,否则你会降低UI响应速度或者遇到丑陋的JS超时弹出错误。

答案 1 :(得分:0)

您可以尝试使用JavaScript,php和其他语言实现的http://rosettacode.org/wiki/LZW_compression