<?php
$str=file_get_contents("layout.css")
preg_match_all("/url\((.*)\) /",$str,$out)
foreach($out[1] as $v){
$new=str_replace("../pic","img",$v)//设置新路径
if(file_exists($v)){//判断是否存在
copy($v,$new)//复制到新目录
unlink($v)//删除老文件
}else{
echo $v."<br/>"//如果不存在,就输出文件目录+文件名
}
}
?>
推荐的做法:在入口文件处,给系统资源文件路径定义成常量;
比如:
define('CSS_URL',SITE_URL.'shop/Public/css/')然后在对应的显示页面,引入thinkphp的系统常量集中替换原先的CSS文件路径,
比如:
<link href="{$Think.const.CSS_URL}style.css" rel="stylesheet" type="text/css" />其他:
引入绝对路径:
需要相对于站点的根目录来引入
可以保证在页面少的情况下正常的样式控制显示【不推荐】
引入相对路径:
相对于入口文件去引入
可控性不强,不方便项目的迁移、文件夹层级的变动【不推荐】