利用PHP压缩CSS、JS 输出

📅 2020-03-21 👤 超级管理员
#技术文章 #建站教程 #教程 #优化
🤖 AI摘要

文章介绍了一种通过PHP脚本合并压缩CSS和JavaScript文件以提升网站速度的方法。提供了具体的PHP代码实现,包括CSS和JS压缩两部分,通过自定义函数合并多个文件并去除注释、空格、换行符等冗余内容。用户只需修改文件路径,前端直接链接PHP文件即可使用。该方法能有效减少文件体积,显著提高网站运行速度。

最近发现把网站css JavaScript 压缩之后运行速度快的多
把代码分享一下吧 利用PHP把所有的CSS JS 处理压缩成一个文件输出

CSS

<?php  
    header('Content-type: text/css');  
    ob_start("compress");  
    function compress($buffer) {  
        $buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer);  
        $buffer = str_replace(array(" 
        ", "\r", "\n", "\t", '  ', '    ', '    '), '', $buffer);  
        return $buffer;  
    }  
    include('第一个CSS文件');   //例如当前PHP文件下的 ./main.js
    include('第二个CSS文件');   //复制调用更多JS文件
    ob_end_flush();  //输出压缩后的内容
?>

改一下文件路径即可使用
前端链接css就直接链接PHP文件

 <link rel="stylesheet" type="text/css" href="处理CSS的PHP文件"/>

JavaScript

<?php
    error_reporting(E_ALL & ~E_NOTICE);
    if(extension_loaded('zlib')){
        ob_start('ob_gzhandler');
    }
    header ("content-type:application/x-javascript; charset: UTF-8");
    header ("cache-control: must-revalidate");
    $offset = 60 * 60 * 24; //js文件的距离现在的过期时间,这里设置为一天
    $expire = "expires: " . gmdate ("D, d M Y H:i:s", time() + $offset) . " GMT";
    header ($expire);
    ob_start("compress");
    function compress($buffer) {
        $buffer = preg_replace('/\/\/.*/','', $buffer);
        $buffer = str_replace(array("
        ", "\r", "\n", "\t", '  ', '    ', '    '), '', $buffer);
        return $buffer;
    }
    include('js文件一'); //例如当前PHP文件下的main.js
    include('js文件二'); //复制调用更多JS文件
    if(extension_loaded('zlib')){
        ob_end_flush(); //输出压缩后的内容
    }
?>

同理修改文件即可

<script src="处理JS的PHP文件" type="text/javascript" charset="utf-8"></script>

压缩之后速度会快很多

← 返回首页 最后更新: 2025-12-17

您正在浏览AMP加速版本,评论功能在完整版中可用。

查看完整版本