将PHP程序中返回的JSON格式数据用gzip压缩输出

时间:2023-03-09 10:00:55
将PHP程序中返回的JSON格式数据用gzip压缩输出
//phpinfo(); 搜索下 zlib 是否开启
//此示例开启压缩 Content-Length:124 Size: 404B
//未开启gzip压缩 Content-Length:675 Size: 907B
//可以在config.php 添加变量设置是否开启gzip压缩 $config['compress_output'] = TRUE;
// if($this->config->item('compress_output') == TRUE) { 下面的If代码 }
if (extension_loaded('zlib')) {
if (isset($_SERVER['HTTP_ACCEPT_ENCODING']) and strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== FALSE) {
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),
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),
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),
); header('content-type:application/json');
echo json_encode($data);