数据库
首页 > 数据库> > php – 如果文件夹中的文件名与数据库中的文件名不同,如何显示图像?

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