file_exists始终返回false

时间:2012-01-31 14:59:33

标签: php file-exists

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

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

我甚至将所有文件permsisons设置为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"/>';

}

1 个答案:

答案 0 :(得分:0)

我也有这个问题。根据{{​​3}},在同一脚本执行期间创建或删除文件时,应在调用clearstatcache();之前调用file_exists();。如果有效,请告诉我们!