Mar*_*nLA 7 php macos mamp file-exists
首先,Mac OS X不是我的原生操作系统,但由于我对Ubuntu很满意,所以大部分时间都是一个简单的过渡.
由于它是基于Unix的,我觉得这个操作系统区分大小写,但file_exists()
功能却说不然.
在我的htdocs文件中,我有这两个文件:
test.php的
MyFiLeWiThMiXeDCaSe.php
在test.php中,我有这个代码:
if(file_exists('myfilewithmixedcase.php')) {
echo 'exists';
} else {
echo 'doesnt exist';
}
// ouputs: exists
Run Code Online (Sandbox Code Playgroud)
任何人都知道这是怎么回事?这导致了一个问题,因为当我们将这样的代码部署到linux OS时,file_exists()
返回false.
BTW:我正在使用MAMP PRO作为本地Web服务器.
尽管是 BSD 衍生版本,但 OS X 不区分大小写。或者更确切地说 HFs 和 HFS+ 文件系统不是,除非您在格式化磁盘时选择区分大小写的选项。通常不会这样做,因为许多应用程序(Adobe、MS 等)都存在此问题——或者至少我上次在 Tiger 下尝试时这样做了。
OS X 上的默认文件系统是不区分大小写的 HFS+。
您可以将卷格式化为区分大小写的 HFS+,并且有多种(肮脏的)方法可以为现有卷启用区分大小写。但是,这些会破坏现有软件,您应该避免根卷上区分大小写。
如果您出于某种原因需要区分大小写的文件系统(例如构建 Android 需要它),您可以使用“磁盘工具”制作适当格式的磁盘映像。
请注意,OS X 的 UNIX 基础可以很好地处理区分大小写的文件系统。