【发布时间】:2018-02-22 17:57:44
【问题描述】:
我正在尝试修复这部分代码,因为我收到如下错误:
警告:filemtime(): stat failed for /var/www/vhosts/example.tk/httpdocs/manager/css/general.css in /var/www/vhosts/example.tk/httpdocs/js-and-第 49 行的 css.inc.php
function addStyleCssHtml($arr_css){
$css_files=implode('|', $arr_css);
$file_hash=sha1($css_files);
$dest_path=$_SERVER['DOCUMENT_ROOT'].'/css/static-'.$file_hash.'.css';
$recreate=!file_exists($dest_path);
if (!$recreate) {
$last_updated=filemtime($dest_path);
foreach ($arr_css as $fl){
$temp_path=(substr($fl, 0, 1)=='/')?$_SERVER['DOCUMENT_ROOT'] . $fl:realpath($fl);
if (!file_exists($temp_path)) $temp_path=$_SERVER['DOCUMENT_ROOT'].'/'.$fl;
$time = filemtime($temp_path);
if ($time > $last_updated) {
$recreate=true;
break;
}
第 49 行是:$time = filemtime($temp_path);
我认为这与路径有关。
【问题讨论】:
-
您确认错误消息中的文件 /var/www/vhosts/example.tk/httpdocs/manager/css/general.css 确实存在吗?如果其中一个文件不存在,您将 $temp_path 设置为一个新值,但没有后续检查新文件是否存在。
-
在任何地方,名为 general.css 的文件都没有被调用,而是在这里:/var/www/vhosts/example.tk/httpdocs/merchant/css/general.css 所以我的意思是文件是那里不存在,但我想知道我该怎么做,它调用的不是那里存在的文件,而是在商家文件夹下。