將PHP程序中返回的JSON格式數(shù)據(jù)用gzip壓縮輸出的方法
1.使用壓縮與不使用壓縮的HTTP輸出比較

2.開啟gzip
利用apache mod_deflate module 開啟gzip
開啟方法:
sudo a2enmod deflate sudo /etc/init.d/apache2 restart
關(guān)閉方法:
sudo a2dismod deflate sudo /etc/init.d/apache2 restart
3.設(shè)置需要gzip壓縮輸出的類型
json的輸出類型是application/json,所以可以這樣設(shè)置
在httpd.conf的<Directory></Directory>中加入
<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE application/json </IfModule>
<?php
$data = array(
array('name'=>'one','value'=>1),
array('name'=>'two','value'=>2),
array('name'=>'three','value'=>3),
array('name'=>'four','value'=>4),
array('name'=>'five','value'=>5),
array('name'=>'six','value'=>6),
array('name'=>'seven','value'=>7),
array('name'=>'eight','value'=>8),
array('name'=>'nine','value'=>9),
array('name'=>'ten','value'=>10),
);
header('content-type:application/json');
echo json_encode($data);
?>
設(shè)置gzip前輸出:

設(shè)置gzip后輸出:

4.單個json使用gzip壓縮輸出
設(shè)置AddOutputFilterByType DEFLATE application/json后,所有json格式的數(shù)據(jù)輸出都將使用gzip壓縮輸出。
如果只想某一個json使用gzip壓縮輸出,其他不需要,可以使用ob_start();方法來實(shí)現(xiàn)。
首先不需要設(shè)置AddOutputFilterByType,然后在代碼最開始位置加入ob_start('ob_gzhandler');
<?php
ob_start('ob_gzhandler');
$data = array(
array('name'=>'one','value'=>1),
array('name'=>'two','value'=>2),
array('name'=>'three','value'=>3),
array('name'=>'four','value'=>4),
array('name'=>'five','value'=>5),
array('name'=>'six','value'=>6),
array('name'=>'seven','value'=>7),
array('name'=>'eight','value'=>8),
array('name'=>'nine','value'=>9),
array('name'=>'ten','value'=>10),
);
header('content-type:application/json');
echo json_encode($data);
?>
相關(guān)文章
基于PHP生成靜態(tài)頁的實(shí)現(xiàn)方法
本篇文章是對PHP生成靜態(tài)頁的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的分析介紹。需要的朋友參考下2013-05-05
phpstudy 進(jìn)行 composer 全局配置的操作步驟
使用 phpStudy 進(jìn)行環(huán)境搭建時(shí),有時(shí)需要使用 composer 每次都需要查找資料進(jìn)行配置,在此進(jìn)行記錄筆記,方便有需要的道友借鑒,對phpstudy全局配置composer的操作步驟感興趣的朋友跟隨小編一起看看吧2023-08-08
Laravel8 使用圖形驗(yàn)證碼做登錄功能的實(shí)現(xiàn)
這篇文章主要介紹了Laravel8 使用圖形驗(yàn)證碼做登錄功能的實(shí)現(xiàn),通過安裝擴(kuò)展包調(diào)用相關(guān)接口進(jìn)行校驗(yàn)驗(yàn)證碼是否正確,代碼簡單易懂,需要的朋友可以參考下2021-06-06
PHP實(shí)現(xiàn)圖片旋轉(zhuǎn)效果實(shí)例代碼
這篇文章主要介紹了PHP實(shí)現(xiàn)圖片旋轉(zhuǎn)效果實(shí)例代碼,本文給出代碼示例,代碼中包含一些說明注釋,需要的朋友可以參考下2014-10-10
yii2.0實(shí)現(xiàn)驗(yàn)證用戶名與郵箱功能
這篇文章主要介紹了yii2.0實(shí)現(xiàn)驗(yàn)證用戶名與郵箱功能的相關(guān)資料,需要的朋友可以參考下2015-12-12

