【问题标题】:PHP - how to access right path to file?PHP - 如何访问文件的正确路径?
【发布时间】:2015-02-02 00:16:36
【问题描述】:
$filename='../uploadedimages/project-'.$item->id.'-'.$imgId;
$filename=$_SERVER['DOCUMENT_ROOT'].'/uploadedimages/project-'.$item->id.'-'.$imgId;

我试图同时使用第一种和第二种方法来查找文件路径并验证文件是否存在 file_exists()。第一个不起作用,因为file_exists() 不接受相对路径,第二个返回错误的、不存在的路径:http://www.kvetena.local/data/www/kvetena.local/web/uploadedimages/project-4-0

正确的路径是:Z:\kvetena.local\web\uploadedimages\,但将来会改变。如何访问该文件夹中的文件?

【问题讨论】:

    标签: php url path filepath file-exists


    【解决方案1】:

    如果您只使用图片,我可以建议您另一种方法来检查文件是否存在

    function file_exists_url($url){
            if(@GetImageSize($url)) return true;
            else return false;
        }
    

    您可以将此功能与相对路径一起使用

    【讨论】:

    • 它不起作用,返回 false 与 '../uploadedimages/project-'.$item->id.'-'.$imgId;路径,即使文件存在
    【解决方案2】:

    使用realpath获取绝对路径:

    $absPath = realpath($filenamed);
    

    【讨论】:

    • $filename='../uploadedimages/project-'.$item->id.'-'.$imgId; echo "";这不起作用 - 返回空的“”路径
    • 它可能返回空字符串,因为realpath返回了false。阅读有关此案例的手册部分:这可能是因为文件不存在或运行脚本的用户没有权限而发生。
    猜你喜欢
    • 1970-01-01
    • 2021-08-13
    • 2014-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多