如何使用 PHP 输出压缩的 HTML 代码

前面我介绍了可以使用 Minify 这个工具和其 WordPress 插件对 CSS 和 JS 进行最小化压缩和合并,但是对于服务器输出的 HTML 代码,是否也可以进行压缩呢?

下面就是一个对 HTML 进行压缩的 PHP 函数:


function wpjam_minify_html($html) {
    return preg_replace(
        $search = array(
            '/\>[^\S ]+/s',  // 删除标签后面空格
            '/[^\S ]+\</s',  // 删除标签前面的空格
            '/(\s)+/s'       // 将多个空格合并成一个
        ), 
        array(
            '>',
            '<',
            '\\1'
        ), 
        $html
    );
}
[/code]


对于 WordPress 博客来说,将上面的函数和下面的代码复制到当前主题的 <code>functions.php</code> 文件中,就可以实现输出页面 HTML 代码的压缩:

[code]
if(!is_admin()){
	add_action("wp_loaded", 'wp_loaded_minify_html');
	function wp_loaded_minify_html(){
		ob_start('wpjam_minify_html');
	}
}

热门文章