【问题标题】:String compression in PHP and JavaScriptPHP 和 JavaScript 中的字符串压缩
【发布时间】:2011-07-16 08:30:22
【问题描述】:

有没有办法可以在 PHP 中压缩一个长字符串(例如一个长 JSON 字符串),然后在 JavaScript 中解压缩它?

【问题讨论】:

标签: php javascript compression


【解决方案1】:

一种解决方案是对 PHP 脚本的整个输出使用 gzip 压缩 - 并让浏览器在客户端处理解压缩。

如果您使用的是 Apache,则可以使用 mod_deflate
否则,在 PHP 中,您可以使用 ob_gzhandler -- 请参阅该手册页上的示例。

然后,在客户端(浏览器),你什么都不用做:解压会自动处理。


作为旁注:使用mod_deflate,您可以配置CSS、Javascript、HTML(好吧,所有文本数据)以相同的方式压缩——这将减小页面的大小,并加快他们的加载速度;所以,值得研究一下;-)

【讨论】:

    【解决方案2】:
      <?php
         $str1 = "Test";
         $str2 = "Test";
         if ($str1 == "Test") echo "OK-1";
         if ($str1 == $str2) echo "OK-2";
      ?>
    

    【讨论】:

    • 你的“答案”有几个缺点;它们不是不言自明的,它们没有解决 OP 的问题,而且不止一个。
    • 压缩,而不是比较。并且不赞成用多个无用的答案向问题发送垃圾邮件
    【解决方案3】:
    function isSameString( s1, s2 )
      {
        alert( "s1: " + s1.toString() );
        alert( "s2: " + s2.toString() );
    
        return s1.toString() == s2.toString();
      }
    

    【讨论】:

    • 你的答案如何解决压缩
    • return s1.toString() == s2.toString() 更具可读性并且完全相同时,为什么有人会这样做?
    • if ( s1.toString() == s2.toString() ) 我这样做是因为我使用函数............时间如此......否则我们必须在所有地方写
    • 什么?我的意思是return s1.toString() == s2.toString()if (s1.toString() == s2.toString()) { return true; } else { return false; }相同
    猜你喜欢
    • 1970-01-01
    • 2013-10-30
    • 1970-01-01
    • 1970-01-01
    • 2013-05-12
    • 1970-01-01
    • 1970-01-01
    • 2012-07-14
    相关资源
    最近更新 更多