0

我有一个简单的函数可以在文件旁边输出一个文件类型的图标,但由于某种原因file_exists()总是返回 false。我已经输出了正在生成的路径,它显然存在于“default.png”中。我在这里错过了什么吗?

我尝试使用 URL 和文件路径 - 两者总是返回 false。

我什至将所有文件权限设置为 777 以测试这是否是问题所在,但这不起作用。

/**
 * Displays the logo for the file type passed to the function
 *
 * @param required string $file_type The file type to display an icon for
 */
function show_file_type($file_type){

    $file_types_folder = get_bloginfo('template_directory').'/includes/images/file_types/';

    if(file_exists($file_types_folder.$file_type.'.png')) :
        $file_type_image = $file_types_folder.$file_type.'.png';
    elseif(file_exists($file_types_folder.'default.png')) :
        $file_type_image = $file_types_folder.'default.png';
    else :
        return false;
    endif;

    echo '<img src="'.$file_type_image.'" width="20"/>';

}
4

1 回答 1

0

我也有这个问题。根据文档,在同一脚本执行期间创建或删除文件时,您应该在调用clearstatcache();之前调用。file_exists();让我们知道它是否有效!

于 2013-03-12T19:27:20.827 回答