PHP if 语句具有多个文件扩展名?

Posted

技术标签:

【中文标题】PHP if 语句具有多个文件扩展名?【英文标题】:PHP if statement with multiple file extensions? 【发布时间】:2011-04-02 21:00:42 【问题描述】:
if(!file_exists("dynamic/content_".$get.".html"))

这存在于一个 php 文件中。我需要修改这行代码,使其能够导航到 dynamic/content_whatever.php,而不仅仅是 .html。

最好的方法是什么?谢谢。

【问题讨论】:

【参考方案1】:
if (file_exists("dynamic/content_".$get.".html")) 
    include "dynamic/content_".$get.".html";
 elseif (file_exists("dynamic/content_".$get.".php")) 
    include "dynamic/content_".$get.".php";

【讨论】:

【参考方案2】:

利用glob() 令人敬畏的支撑能力:

if (count(glob("dynamic/content_$get.php,html,txt,htm", GLOB_BRACE)) == 0)
  ...

给Gumbo的帽子提示

可能比使用file_exists() 慢一点,因为该函数非常快并且另外使用stat cache,据我所知,glob() 没有。

【讨论】:

以上是关于PHP if 语句具有多个文件扩展名?的主要内容,如果未能解决你的问题,请参考以下文章

带有回形针的 If 语句 | Ruby on Rails

PHP 是不是具有在给定有效内容类型的情况下返回正确文件扩展名的函数?

批量重命名具有不同扩展名Linux脚本的多个文件?

如何在perl中验证具有给定文件扩展名的多个文件

如何在 Prettier 中使用具有多个扩展名的文件?

如何在php中扩展mysqli插件。