php根据操作系统转换文件名大小写的方法

php的开发中我们要包含某个文件通常的代码是这样的:

复制代码 代码如下:


<?php 
     if(is_file($fileName))
        require $flleName;

在windows,linux下运行都没有问问题: 假设现在要包含一个   D:/web/webServer/A.php文件

在传值的时误传了D:/web/webServer/a.php  在windows下运行时也会把D:/web/webServer/A.php包含进来,因为windows是不区分大小的,放在linux下就会报错了

那如做到在windows加载也能区分大小写呢?代码如下:

复制代码 代码如下:


if(is_file($fileName)){
   //PHP_OS  当前运行的操作系统
   if(strstr(PHP_OS,'WIN')){
     //realpath($fileName) 会转换文件名大小写  /web/A.php 如果A.php不存在而a.php则会返回/web/a.php
        if(basename(realpath($fileName)) == basename($fileName))
            require $fileName;
        else
            echo '请检查文件的大小写';
    }else
        require $fileName;
}

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/d6eab772de5f53c571c278237bb341f0.html