使用php isn'检查文件是否存在;不行,需要帮助吗
请告知我,我的以下代码有什么问题:使用php isn'检查文件是否存在;不行,需要帮助吗,php,file,exists,Php,File,Exists,请告知我,我的以下代码有什么问题: <a href="<?php echo $_url; ?>" title="<?php echo $_name; ?>"> <?php $logo2 = $_url.'/image/data/logo2.png'; $logo = $_url.'/image/data/logo.png'; if (file_exists($logo2)) { echo "<img src=".$logo2." al
<a href="<?php echo $_url; ?>" title="<?php echo $_name; ?>">
<?php
$logo2 = $_url.'/image/data/logo2.png';
$logo = $_url.'/image/data/logo.png';
if (file_exists($logo2)) {
echo "<img src=".$logo2." alt=\"Logo\" style=\"border: none;\" />";
} else {
echo "<img src=".$logo." alt=\"Logo\" style=\"border: none;\" />";
} ?>
</a>
$logo2和$logo的图像都存在于同一目录中,但代码仅显示$logo(logo.png)
我需要事先得到提示和感谢
更新:
$\u url的值为
$this->data[''u url']=
$this->config->get('config_url')
当我
时,会显示
通过使用上面的代码仅显示logo.png您正在将
文件\u exists()
应用到一个无效的URL
您需要将其应用于文件系统路径。
文件存在
需要本地路径,而不是url。使用()作为文件存在将返回false
<a href="<?php echo $_url; ?>" title="<?php echo $_name; ?>">
<?php
$logo2 = $_url.'/image/data/logo2.png';
$logo = $_url.'/image/data/logo.png';
if (getimagesize($logo2)) {
echo "<img src=".$logo2." alt=\"Logo\" style=\"border: none;\" />";
} else {
echo "<img src=".$logo." alt=\"Logo\" style=\"border: none;\" />";
} ?>
</a>
文件\u存在
可用于URL包装
在您的情况下,如果确实需要执行URL包装检查(速度会非常慢),请确保启用了URL包装(默认为启用)
另外,您的$\uURL=
,请注意额外的斜杠可能会影响web服务器的重写
如果文件与web服务器位于同一服务器上,则应将$\u url
替换为文档根目录(文件夹路径)
对于函数而言,
文件_存在
对于目录也返回true。您应该将其替换为is_file
与这里的一些答案相反,file_exists可以将URL作为参数,它将检查它是否存在。不过,您最好还是使用文件系统路径,而不是URL
无论如何,我马上想到两个原因:
您不是在检查文件是否存在,而是在检查URL是否存在。
$\u URL
的值是多少?您好,$\u URL的值是在我最近更新的上述内容中进行回显后的值对不起,但该代码可能显示logo.png。因为第一个条件是错误的