首頁 >後端開發 >php教程 >php json資料使用gzip壓縮輸出的相關內容

php json資料使用gzip壓縮輸出的相關內容

jacklove
jacklove原創
2018-06-09 10:10:502123瀏覽

1.使用壓縮與不使用壓縮的HTTP輸出比較

php json資料使用gzip壓縮輸出的相關內容



php json資料使用gzip壓縮輸出的相關內容

2.開啟gzip

使用apache mod_deflate module 開啟gzip
開啟方法:

sudo a2enmod deflatesudo /etc/init.d/apache2 restart

關閉方法:

sudo a2dismod deflatesudo /etc/init.d/apache2 restart

3.設定需要gzip壓縮輸出的型別

json的輸出型別是application /json,所以可以這樣設定
在httpd.conf的<directory></directory>加入

<IfModule mod_deflate.c>AddOutputFilterByType DEFLATE application/json</IfModule>
<?php$data = array(    array(&#39;name&#39;=>&#39;one&#39;,&#39;value&#39;=>1),    array(&#39;name&#39;=>&#39;two&#39;,&#39;value&#39;=>2),    array(&#39;name&#39;=>&#39;three&#39;,&#39;value&#39;=>3),    array(&#39;name&#39;=>&#39;four&#39;,&#39;value&#39;=>4),    array(&#39;name&#39;=>&#39;five&#39;,&#39;value&#39;=>5),    array(&#39;name&#39;=>&#39;six&#39;,&#39;value&#39;=>6),    array(&#39;name&#39;=>&#39;seven&#39;,&#39;value&#39;=>7),    array(&#39;name&#39;=>&#39;eight&#39;,&#39;value&#39;=>8),    array(&#39;name&#39;=>&#39;nine&#39;,&#39;value&#39;=>9),    array(&#39;name&#39;=>&#39;ten&#39;,&#39;value&#39;=>10),
);

header(&#39;content-type:application/json&#39;);echo json_encode($data);?>

設定gzip前輸出:

php json資料使用gzip壓縮輸出的相關內容

設定gzip後輸出:

php json資料使用gzip壓縮輸出的相關內容

#4.單一json使用gzip壓縮輸出


設定AddOutputFilterByType DEFLATE application/json後,所有json格式的資料輸出都會使用gzip壓縮輸出。

如果只想某一個json使用gzip壓縮輸出,其他不需要,可以使用ob_start();方法來實作。 首先不需要設定AddOutputFilterByType,然後在程式碼最開始位置加入

ob_start('ob_gzhandler');

<?phpob_start(&#39;ob_gzhandler&#39;);$data = array(    array(&#39;name&#39;=>&#39;one&#39;,&#39;value&#39;=>1),    array(&#39;name&#39;=>&#39;two&#39;,&#39;value&#39;=>2),    array(&#39;name&#39;=>&#39;three&#39;,&#39;value&#39;=>3),    array(&#39;name&#39;=>&#39;four&#39;,&#39;value&#39;=>4),    array(&#39;name&#39;=>&#39;five&#39;,&#39;value&#39;=>5),    array(&#39;name&#39;=>&#39;six&#39;,&#39;value&#39;=>6),    array(&#39;name&#39;=>&#39;seven&#39;,&#39;value&#39;=>7),    array(&#39;name&#39;=>&#39;eight&#39;,&#39;value&#39;=>8),    array(&#39;name&#39;=>&#39;nine&#39;,&#39;value&#39;=>9),    array(&#39;name&#39;=>&#39;ten&#39;,&#39;value&#39;=>10),
);

header(&#39;content-type:application/json&#39;);echo json_encode($data);?>

 本文解說了php json資料使用gzip壓縮輸出的相關內容,更多相關內容請關注php中文網。

相關推薦:
如何透過php使用http_build_query,parse_url,parse_str建立與解析url


如何透過html5實現搖晃的功能


如何透過MySql查看與修改auto_increment的方法

######

以上是php json資料使用gzip壓縮輸出的相關內容的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn