>백엔드 개발 >PHP 튜토리얼 >gzip 압축을 사용한 php json 데이터 출력 관련 내용

gzip 압축을 사용한 php json 데이터 출력 관련 내용

jacklove
jacklove원래의
2018-06-09 10:10:502106검색

1. 압축 유무에 따른 HTTP 출력 비교

gzip 압축을 사용한 php json 데이터 출력 관련 내용



gzip 압축을 사용한 php json 데이터 출력 관련 내용

2 gzip을 켜세요

apache mod_deflate 모듈을 사용하여 gzip을 켜세요.
열는 방법:

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

닫기 방법:

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

3. gzip 압축이 필요한 출력 유형을 설정합니다

json의 출력 유형은 application/json이므로 설정하면 됩니다. code> gzip 전에 출력을 설정하려면 <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前输出:

gzip 압축을 사용한 php json 데이터 출력 관련 내용

设置gzip后输出:

gzip 압축을 사용한 php json 데이터 출력 관련 내용

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);?>
rrreee

를 추가하세요.

여기에 그림 설명 쓰기

gzip 설정 후 출력:

여기에 그림 설명 쓰기

4. 단일 json은 gzip 압축을 사용하여 출력됩니다.
AddOutputFilterByType DEFLATE application/json을 설정한 후 json 형식의 모든 데이터 출력은 gzip을 사용하여 압축됩니다.

특정 json을 출력하기 위해 gzip 압축만 사용하고 다른 JSON은 출력하지 않으려면 ob_start() 메서드를 사용하면 됩니다. 🎜🎜먼저 AddOutputFilterByType을 설정할 필요가 없으며 코드 시작 부분에 ob_start('ob_gzhandler');🎜rrreee🎜를 추가합니다. 이 글에서는 gzip 압축 출력 사용 관련 내용을 설명합니다. PHP json 데이터 및 기타 관련 콘텐츠 PHP 중국어 웹사이트에 주목하세요. 🎜🎜관련 권장 사항: 🎜🎜🎜php를 통해 http_build_query,parse_url,parse_str을 사용하여 url을 생성하고 구문 분석하는 방법🎜🎜🎜🎜🎜html5를 통해 흔들기 기능을 구현하는 방법🎜🎜🎜🎜🎜을 통해 auto_increment 메서드를 보고 수정하는 방법 MySQL 🎜🎜🎜

위 내용은 gzip 압축을 사용한 php json 데이터 출력 관련 내용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.