php – 如果文件夹中的文件名与数据库中的文件名不同,如何显示图像?
作者:互联网
我目前正在PHP页面上显示数据库中的文件名.但是,服务器文件夹上的某些文件名具有不同的大小写.因此,数据库可能会说image1.jpg,服务器上的文件名可能以大写字母表示“image1.JPG”.这是随机的一些文件.这些文件不会显示.有没有办法可以使用一个功能,以便它可以显示.我们这里讨论的文件超过1000个.所以任何帮助都将受到高度赞赏.
解决方法:
我会运行一个自定义的file_exists()函数来检查图像的扩展名是哪种情况.
使用此自定义函数检查正确的大小写(将其传递给小写,如果返回1则使用小写,如果返回2则使用大写):
function file_exists_case($strUrl)
{
$realPath = str_replace('\\','/',realpath($strUrl));
if(file_exists($strUrl) && $realPath == $strUrl)
{
return 1; //File exists, with correct case
}
elseif(file_exists($realPath))
{
return 2; //File exists, but wrong case
}
else
{
return 0; //File does not exist
}
}
不过,当你有时间的时候,你真的应该进入并将所有文件扩展名设为小写.
你这样做的方法是通过目录运行glob():http://php.net/manual/en/function.glob.php并使用strtolower()将每个文件扩展名重命名为小写:http://php.net/manual/en/function.strtolower.php
标签:php,image,filenames,image-upload 来源: https://codeday.me/bug/20190517/1123278.html