1. 程式人生 > >php基於ob_start(ob_gzhandler)實現網頁壓縮功能的方法

php基於ob_start(ob_gzhandler)實現網頁壓縮功能的方法

本文例項講述了php基於ob_start('ob_gzhandler')實現網頁壓縮功能的方法。分享給大家供大家參考,具體如下:

PHP生成網頁後傳送給瀏覽器顯示 ,頁面的開啟速度除了與使用者的網速有關,往往也跟頁面的大小有很關係,我們可以從網 頁大小著手,以提高網頁的響應速度。

下面的程式碼是一個壓縮網頁的例子,我們利用ob_gzip函式,使用ob_start將輸出內容壓縮後放到“緩衝區”後再輸出 。

PHP程式碼

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

//啟用壓縮

if(function_exists('ob_gzip'))

{

 ob_start('ob_gzip');

}

//準備一些待壓縮的內容

for($i=0; $i<100; $i++)

{

 echo('這裡是測試內容 <br>');

}

//輸出壓縮成果

ob_end_flush();

//這是ob_gzip壓縮函式

function ob_gzip ($content)

{

 if( !headers_sent() && extension_loaded ("zlib") && strstr ( $_SERVER["HTTP_ACCEPT_ENCODING"

], "gzip")){

 $content = gzencode($content,9);

 header ("Content- Encoding: gzip");

 header ("Vary: Accept- Encoding");

 header ("Content- Length: ".strlen ($content));

 }

 return ($content) ;

}

到底作用有 多大,在這裡我就上面的程式碼進行了測試。

壓縮前:

壓縮後: