file_exists 总是返回 false

发布于 2025-01-01 01:21:43 字数 874 浏览 1 评论 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"/>';

}

I have a simple function to output an icon for a file type next to the file, but for some reason file_exists() always returns false. I have output the path that is being generated, and it clearly exists for 'default.png'. Am I missing something here?

I have tried useing the URL and the file path - both always return false.

I even set all files permisisons to 777 to test if that was the issue, but that did not work.

/**
 * 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"/>';

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

ゃ懵逼小萝莉 2025-01-08 01:21:43

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

I'm having this issue also. According to the docs you should call clearstatcache(); before calling file_exists(); when the file is created or deleted during the same script execution. Let us know if it works!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文