• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php CSS Update Class的相关内容讲解

php 搞代码 4年前 (2022-01-22) 25次浏览 已收录 0个评论

CSSUpdate.class.php

<?php/** css 更新类,更新css文件内图片的版本*	Date: 	2013-02-05*	Author: fdipzone*	Ver:	1.1**	Func:*	update();**   Ver:    1.1 增加search_child参数,可遍历子文件夹*/class CSSUpdate{    private $csstmpl_path = null;    private $css_path = null;    private $replacetags = array();    private $search_child = false;    private $convert_num = 0;    private $is_ready = 0;    /** 初始化    * @param String  $csstmpl_path css模版路径    * @param String  $css_path     css目标路径    * @param Array   $replacetags  需要替换的图片类型    * @param boolean $search_child 是否遍历子文件夹,默认false    */    public function __construct($csstmpl_path, $css_path, $replacetags=array(), $search_child=false){        if(!is_dir($csstmpl_path) || !is_dir($css_path) || !$replacetags){            $this->is_ready = 0;        }else{            $this->csstmpl_path = $csstmpl_path;            $this->css_path = $css_path;            $this->replacetags = $replacetags;            $this->search_child = $search_child;            $this->is_ready = 1;        }    }    /** 更新css文件 */    public function update(){        if($this->is_ready==0){            $this->response('csstmpl or csspath or replacetags error');            return '';        }        $this->traversing($this->csstmpl_path);        $this->response('covert num:'.$this->convert_num);    }    /** 遍历文件夹    * @param String $path 文件路径    */    private function traversing($path){        $handle = opendir($path);        while(($file=readdir($handle))!==false){            if($file!='..' && $file!='.'){                $curfile = $path.'/'.$file;                                if(is_dir($curfile)){   // folder                    if($this->search_child){    // 需要遍历子文件夹                        $this->traversing($curfile);                    }                }elseif($this->checkExt($curfile)){ // css file                    $dfile = str_replace($this->csstmpl_path, $this->css_path, $curfile);                    $this->create($curfile, $dfile);                    $this->response($curfile.' convert to '.$dfile.' success');                 <span>%本文来源gaodai#ma#com搞*代#码9网#</span><strong>搞gaodaima代码</strong>   $this->convert_num ++;                }            }        }        closedir($handle);    }    /** 检查文件后缀 */    private function checkExt($file){        $name = basename($file);        $namefrag = explode('.', $name);        if(count($namefrag)>=2){            if(strtolower($namefrag[count($namefrag)-1])=='css'){ // css文件                return true;            }        }        return false;    }    /** 替换模版内容,写入csspath    * @param String $tmplfile 模版文件    * @param String $dfile    目标文件    */    private function create($tmplfile, $dfile){        $css_content = file_get_contents($tmplfile);                foreach($this->replacetags as $tag){            $css_content = str_replace($tag, $tag."?".date('YmdHis'), $css_content);        }                if(!is_dir(dirname($dfile))){   // 生成目标路径            mkdir(dirname($dfile), 0755, true);        }                file_put_contents($dfile, $css_content, true);    }    /** 输出 */    private function response($content){        echo $content."<br>";    }}?>

demo:

<?phprequire_once "CSSUpdate.class.php";define('ROOT_PATH', dirname(__FILE__));$css_path = ROOT_PATH.'/css';$csstmpl_path = ROOT_PATH.'/csstmpl';$replacetags = array('.png', '.jpg', '.gif');$cssobj = new CSSUpdate($csstmpl_path, $css_path, $replacetags);$cssobj->update();?>

本文讲解了php CSS Update Class的相关内容,更多相关内容请随时关注我们网站!

相关推荐:

关于php __call 与 __callStatic 的内容讲解

关于memcached 常用命令及使用说明

关于PHPMailer – PHP email transport class 的相关讲解

以上就是php CSS Update Class的相关内容讲解的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php CSS Update Class的相关内容讲解
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址