用php检查存在的文件

时间:2016-03-14 06:34:48

标签: php yii2

我想用php或yii2检查存在的文件

filesize以及is_filefile_exists无效!

filesize错误是:filesize(): stat failed for....
is_filefile_exists返回false!

这是我的代码:

 $fileI = $urlBase . "$home/../siteImage/$logo";

$ fileI是:

http://localhost/iicitySite/web/index.php/../siteImage/parvaz.png

$ home is:

 $home -> /iicitySite/web/index.php

这在视图中具有正确的图像:

      echo "



        <div class='col-lg-12 col-xs-12 col-sm-12 col-md-12 forsatItem'>
            <div class='backItem'>
                <div class='rightM col-lg-4'>
                    <div class='imgForsat'>
                        <img src='$home/../siteImage/$logo' alt=''/>
                    </div>

。 。 。

5 个答案:

答案 0 :(得分:1)

我已经检查并验证了下面的代码,它运行正常。

$filename = '/path/to/foo.txt';

if (file_exists($filename)) {
    echo "The file $filename exists";
} else {
    echo "The file $filename does not exist";
}

如果您无法执行此操作,则表示您同意该问题。尝试检查桌面或其他允许目录中的文件。

希望这会有所帮助。

答案 1 :(得分:1)

试试这个

$url = 'http://www.example.com';//or file path
$headers = get_headers($url, 1);
print_r($headers);//$headers[0] u will get the status

来源:link

答案 2 :(得分:1)

在你的路径中,你不需要index.php,只需要路径

您可以使用此方法获取绝对值(包括http的整个网址)url:

 echo Url::to('@web/siteImage/parvaz.png', true);
 // http://codematrics.com/web/siteImage/parvaz.png

如果你想使用相对(相对于当前路径)路径,你可以使用它:

 echo Url::to('@web/siteImage/parvaz.png', true);images/logo.png
 // http://codematrics.com/web/siteImage/parvaz.png

答案 3 :(得分:0)

如果你正在检查文件是否存在于服务器只是你必须给出绝对路径,我使用\ Yii :: getAlias(&#39; @ webroot&#39;)来获取绝对路径和我& #39; m从Controller执行此操作。

这是我在网络浏览器中的结果。

绝对路径:/home/hostinguser/public_html/files/temppdf/benja.pdf 文件/home/hostinguser/public_html/files/temppdf/benja.pdf存在

        $pathFile = \Yii::getAlias('@webroot') .'/files/temppdf/' . 'benja.pdf'; 
        echo "<br>Absolute Path:" . $pathFile;
        if (file_exists($pathFile)) {
            echo "<br>The File $pathFile Exists";
        } else {
            echo "<br>The File $pathFile Do Not Exist";
        }

答案 4 :(得分:-2)

$url = 'http://www.example.com'; // or file path
$headers = get_headers($url, 1);
print_r($headers);               // $headers[0] will get the status