2011-03-16 110 views
4

有沒有一種方法可以在PHP中壓縮長字符串(例如長JSON字符串),然後在JavaScript中解壓縮它?PHP和JavaScript中的字符串壓縮

+1

http://stackoverflow.com/questions/2037349/how-to-compress-json-with-php – 2011-03-16 06:13:51

回答

3

一個解決方案是使用PHP腳本的整個輸出的gzip壓縮 - 並讓瀏覽器在客戶端處理解壓縮。

如果您正在使用Apache,則可以使用mod_deflate
否則,在PHP中,您可以使用ob_gzhandler - 請參閱該手冊頁上的示例。

然後,在客戶端(瀏覽器),你無事可做:解壓縮將自動處理。


一點題外話:使用mod_deflate,你可以配置如此CSS,Javascript代碼,HTML (當然,這是文本的所有數據)被壓縮以同樣的方式 - 這會降低你的頁面的大小,和加快他們的加載一點;所以,這是值得研究了一下;-)

-3
<?php 
    $str1 = "Test"; 
    $str2 = "Test"; 
    if ($str1 == "Test") echo "OK-1"; 
    if ($str1 == $str2) echo "OK-2"; 
    ?> 
+1

你的 「答案」 有幾個缺點;他們不是自我解釋,他們沒有解決OP的問題,而且有不止一個。 – jensgram 2011-03-16 09:38:16

+0

我沒有更多的想法在PHP中,因爲我在ASP.NET上工作c#........ – 2011-03-17 08:39:23

+1

compress,沒有比較。並用多個無用的答案發送垃圾郵件的問題在 – 2011-03-17 12:14:25

-3
function isSameString(s1, s2) 
    { 
    alert("s1: " + s1.toString()); 
    alert("s2: " + s2.toString()); 

    return s1.toString() == s2.toString(); 
    } 
+2

你的答案如何解決*壓縮*? – Charles 2011-03-16 06:48:02

+2

爲什麼會有人這樣做,當'返回s1.toString()== s2.toString()'更具可讀性*和*完全相同? – jensgram 2011-03-16 09:36:24

+0

如果(s1.toString()== s2.toString()) 這個我做,因爲我使用功能...........如果我們想要應用相同的更多時間,所以.... ...........否則在所有地方我們必須寫 – 2011-03-17 08:36:39