首页  >  文章  >  后端开发  >  为什么我的 PHP 代码总是报告图像文件存在,即使它不存在?

为什么我的 PHP 代码总是报告图像文件存在,即使它不存在?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-01 05:37:27818浏览

Why Does My PHP Code Always Report an Image File Exists, Even When It Doesn't?

使用 PHP 验证图像文件是否存在

问题:

您想要确定一个图像文件是否存在托管在您的内容交付网络 (CDN) 上的特定图像文件。但是,您实现的代码似乎无效。

尝试的代码:

<code class="php">if (file_exists(http://www.example.com/images/$filename)) {
    echo "The file exists";
} else {
    echo "The file does not exist";
}</code>

观察到的结果:

无论图像实际存在与否,代码始终报告“文件存在。”

解决方案:

代码的主要问题是缺少引号文件名变量周围的标记 ($filename)。该变量必须用引号引起来才能解释为字符串。此外,验证 $filename 是否经过适当的验证至关重要。

更新的代码:

<code class="php">if (file_exists('http://www.mydomain.com/images/'.$filename)) {
    …
}</code>

警告:

需要注意的是,只有在 PHP 配置中启用了allow_url_fopen 设置,代码才能正确运行。

以上是为什么我的 PHP 代码总是报告图像文件存在,即使它不存在?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn