【问题标题】:Allow for case-sensitivity in <img tag from PHP Variable & file extension允许在 PHP 变量和文件扩展名的 <img 标记中区分大小写
【发布时间】:2017-05-18 22:40:34
【问题描述】:

我构建了一个 PHP 脚本,它可以动态生成并显示这样的 IMG 标签:

<img src=/img/{$row['Invl_InventoryNumber']}.BMP>

这在不区分大小写的 Windows 服务器上效果很好。

我们将脚本移至 Linux 并发现文件具有 .BMP 和 .bmp 文件扩展名,并且 $row['Invl_InventoryNumber] 变量也包含大写字母值。

示例:RZP.bmp OR rzp.bmp OR RZP.BMP OR RzP.bmp OR Rzp.BMP 等

我无法控制文件的命名方案,它们是由人创建的,但需要考虑/查找匹配的文件名。我正在考虑某种 CASE 或 if/elseif 语句,但不确定是否有更好的方法来触发该值以检查所有可能性。

【问题讨论】:

  • 更好的方法是在 camelCase 中对所有内容(变量、函数名、文件等)进行编码 - 这可以确保无论您处于什么环境中,它都能正常工作
  • 能不能不把文件名存入数据库,而只是猜测文件名可能是什么?
  • 既然您已经迁移到 Linux,您可以使用快速脚本来更改文件扩展名,这很容易。 stackoverflow.com/questions/11818408/…
  • 定义一个模式,例如:在服务器和数据库中将所有文件名设置为小写

标签: php


【解决方案1】:

这是某些 Unix 操作系统的限制;

所以我建议你将你的文件标准化或在你的数据库中保存相同的名称(如果有的话,大写)。

但是,如果您使用 Apache 为您的页面提供服务,您可以尝试使用 "mod_speling"

【讨论】:

    猜你喜欢
    • 2016-04-03
    • 1970-01-01
    • 2012-11-17
    • 2018-10-28
    • 2013-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多