【问题标题】:JavaScript string compression + PHP decompression [closed]JavaScript字符串压缩+ PHP解压缩[关闭]
【发布时间】:2013-10-30 00:27:40
【问题描述】:

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

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

【问题讨论】:

  • 为什么不直接通过浏览器使用普通的 gzip 压缩?
  • 用PHP你可以试试gzdeflate函数。

标签: javascript php string compression jsonp


【解决方案1】:

对于客户端 javascript 压缩检查这个 deflate 实现:

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

解压 PHP 端只需要 gzinflate()

陷阱

  1. 如果您想将压缩数据从客户端 POST 到服务器,最好先对其进行 base64 编码。 在服务器端,您必须调用 gzinflate(base64_decode($post_body));

  2. 无论是 javascript deflate 实现还是 PHP inflate 实现都不是 100% 正确的,有时,gzinflate 很少返回错误。这意味着如果你沿着这条路走,你应该有一些后备机制,比如:尝试发布压缩数据。如果失败则回退到未压缩的数据。

  3. 保持压缩级别,否则您一定会遇到 javascript 超时错误

  4. 1234563一次处理较小的数据块。理想情况下,每个块不应让 JS 解释器忙碌超过 100 毫秒,否则您要么会降低 UI 响应能力,要么会遇到丑陋的 JS 超时弹出错误。

【讨论】:

    【解决方案2】:

    你可以试试——http://rosettacode.org/wiki/LZW_compression,它有 JavaScript、php 和其他语言的实现。

    【讨论】:

    • 注意:php 实现中存在错误——在解压中:应该是 $w 。 $entry[0],而不是 $w + $entry[0]
    • aaw 还有更多错误...... -.- 编码的人做得不好
    猜你喜欢
    • 2011-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-04
    • 2014-03-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多