本文章來給大家介紹關於php進行壓縮 ob_gzhandler函數有3種方法,有需要了解ob_gzhandler函數用法的朋友不防進入參考。
使用ob_gzhandler函數有3種方法讓它對php進行壓縮:
1、在php.ini中設置output_handler = ob_gzhandler
2、在.htaccess中加入php_value output_handler ob_gzhandler
3、在php文件頭加上ob_start(‘ob_gzhandler’);
第一種我們是沒法辦到,第二種方法不錯,可以一勞永逸,一、二種方法效果都一樣,就是對所有php後綴文件進行壓縮。我這裡主要介紹一下第三種方法,
就是試用CSS壓縮法 例如對模板下的style.css進行壓縮
1、把模板目錄下的style.css復制一份出來,命名為style.css.php
接著在style.css.php頂部加入這句:
代碼如下 復制代碼 <?php if(extension_loaded('zlib')) {ob_start('ob_gzhandler');} header("Content-type: text/css"); ?>
在最後加上
代碼如下 復制代碼 <?php if(extension_loaded('zlib')) {ob_end_flush();} ?>
2、按照下面的方式修改header.php中的css連接
原來的:
代碼如下 復制代碼
<link rel="stylesheet" type="text/css" media="screen" href="/style.css"/>
修改後的:
代碼如下 復制代碼
<link rel="stylesheet" type="text/css" media="screen" href="/style.css.php"/>
搞定,現在你的CSS就可以被gzip壓縮了。
JS也可以使用同樣的方法,只是在xx.js.php頭部加入的應該是這樣:
代碼如下 復制代碼 <?php if ( extension_loaded('zlib') ) {ob_start('ob_gzhandler');} header("Content-Type: text/java script"); ?>
(復制的時候去掉?php前的空格)
仔細看看K2主題的中的JS,就是修改後綴為php後在頂部加入了ob_gzhandler函數。