加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP实现对于css文件的压缩与解压缩

发布时间:2023-06-08 14:06:42 所属栏目:PHP教程 来源:
导读:下面用php实现了一个对css进行压缩和解压缩的小程序,暂不适用于js的操作,通过这个案例可以学习php字符替换和正则替换的技术.

将css代码压缩能够减小文件的体积,从而减小了网络传输量和带宽占用,减小了服务器的处理
下面用php实现了一个对css进行压缩和解压缩的小程序,暂不适用于js的操作,通过这个案例可以学习php字符替换和正则替换的技术.

将css代码压缩能够减小文件的体积,从而减小了网络传输量和带宽占用,减小了服务器的处理的压力.

代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
 
<html xmlns="http://www.w3.org/1999/xhtml"> 
 
<head> 
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
 
</head> 
 
<?php  
 
$string = trim(stripslashes($_POST['code'])); //stripslashes()函数删除转义字符(反斜杠) 
 
if(!emptyempty($string)){ 
 
if($_POST['method'] == '压缩' ){ 
 
$string = css_compress($string); 
 
}elseif($_POST['method'] == '解压缩' ){ 
 
$string = css_decompress($string); 
 

 
}else{ 
 
$string = ''; 
 

 
function css_compress($string){ 
 
//压缩 
 
$string = str_replace("/r/n","",$string); //首先去掉换行 
 
$string = preg_replace("/(/s*/{/s*)/","{",$string); 
 
$string = preg_replace("/(/s*/;/s*/}/s*)/","}",$string); //去掉反括号首位的空格和换行,和最后一个; 
 
$string = preg_replace("/(/s*/;/s*)/",";",$string); 
 
return $string; 
 

 
function css_decompress($string){ 
 
//解压 
 
$string = css_compress($string); //为了效果更好,解压前,先压缩至最简状态 
 
$string = str_replace("{","/r/n{/r/n/t",$string); 
 
$string = str_replace("}","/r/n}/r/n/r/n",$string);  
 
$string = str_replace(";",";/r/n/t",$string); 
 
$string = str_replace("*/","*//r/n",$string); 
 
return $string; 
 

 
?> 
 
<body> 
 
  <div style="width:800px;height:500px;text-align:center"> 
 
  <p><strong>请将css代码粘贴到下面框中,然后选择压缩/解压缩</strong></p> 
 
  <form action="" method="post" name="css_code"> 
 
    <textarea style="width:90%;height:460px;padding:5px;" name="code"><?php echo $string; ?></textarea> 
 
    <br /> 
 
    <input type="submit" name="method" value="压缩" /> 
 
    <input type="submit" name="method" value="解压缩" /> 
 
  </form> 
 
  </div> 
</body> 
</html> 

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章