即使路径正确,file_exists也会返回false

时间:2016-02-17 00:17:30

标签: php wordpress file-exists

我在这里看到了一些类似的问题,但没有答案符合我的需要。

我有一个Wordpress,在上传目录中有一张图片,我有以下图片的网址:../../uploads/2016/2/56c3620a9c8af.png我尝试从子主题文件夹中访问该文件:

/home/mydomain/www/wp-content/themes/twentyfifteen_child

我想检查文件是否存在以及之后unlink()图像,但file_exists始终返回false,即使我可以回显图像。 以下简单函数输出图像,但返回false

function checkImageExist($url)
{
    echo '<img src = "'.$url.'" /><br>'; //The image is rendered

    clearstatcache();

    if(file_exists($url))
    {
       echo 'Image exists '.$url;
    }
    else
    {
        echo 'Image does not exist';    
    }
}

这是我无法理解的。 我错过了什么?

根本没有任何问题:

我用来上传文件的脚本是复制扩展名,所以56c3620a9c8af.png实际上是56c3620a9c8af.png.png这个愚蠢的错误是调用时出现的图像的负责(因为浏览器能够解析它们)即使重复的扩展名)但file_exists无法找到它们。 所以一切正常,我误解了错误来源。

1 个答案:

答案 0 :(得分:1)

当你真正需要的是$ path时,你传递$ url。你可以得到这样的道路:

$path = wp_upload_dir(); //This returns an array with URL info

$path['path']. '/2016/2/56c3620a9c8af.png'