|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #60017 __FILE__ case inconsistency on Mac / MAMP
Submitted: 2011-10-08 21:51 UTC Modified: -
Avg. Score:3.8 ± 1.5
Reproduced:4 of 4 (100.0%)
Same Version:1 (25.0%)
Same OS:3 (75.0%)
From: ykessler at gmail dot com Assigned:
Status: Open Package: Filesystem function related
PHP Version: Irrelevant OS: Mac OSX
Private report: No CVE-ID:
Have you experienced this issue?
Rate the importance of this bug to you:

 [2011-10-08 21:51 UTC] ykessler at gmail dot com
From manual page:

__FILE__ and __DIR__, return lower case paths when in the calling file, and mixed 
case paths in an included file, when run on MAMP.

Test script:
//The following will show all lower case paths when in the calling file, 
//and mixed case paths in an included file, when run on MAMP.

echo "<br/>__FILE__ = ".__FILE__;
echo "<br/>__DIR__ = ".__DIR__;

// include another file with the same code ...

Actual result:
__FILE__ = /users/me/stuff/mamp_server/my_site/myfile.php
__DIR__ = /users/me/stuff/mamp_server/my_site

__FILE__ = /Users/me/Stuff/mamp_server/my_site/myfile.php
__DIR__ = /Users/me/Stuff/mamp_server/my_site


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2011-10-08 23:39 UTC] karcieri at gmail dot com
Zend Server version: 5.1.0

Test script:
Same as bug report

Actual result:
__FILE__ = /usr/local/zend/apache2/htdocs/Test
__DIR__ = /usr/local/zend/apache2/htdocs/Test

__FILE__ = /usr/local/zend/apache2/htdocs/Test
__DIR__ = /usr/local/zend/apache2/htdocs/Test

Is it possible that this bug is only related to the Users directory?
 [2011-10-16 13:30 UTC] ykessler at gmail dot com
Here is another test run outside the Users directory, in the standard MAMP 
install under Applications/MAMP/htdocs:


echo "<br/>__FILE__ = ".__FILE__;
echo "<br/>__DIR__ = ".__DIR__;


echo "<br/>__FILE__ = ".__FILE__;
echo "<br/>__DIR__ = ".__DIR__;

http://localhost/tests/a.php =

__FILE__ = /applications/mamp/htdocs/tests/a.php
__DIR__ = /applications/mamp/htdocs/tests
__FILE__ = /Applications/MAMP/htdocs/tests/a_inc.php
__DIR__ = /Applications/MAMP/htdocs/tests

Zend Engine v2.3.0
OSX 10.6.8
Apache/2.0.63 (Unix) PHP/5.3.2 DAV/2
 [2011-11-05 01:10 UTC] pjb109 at hotmail dot com
Trying to write to a php file but not possible on MAMP. 

Instead tried to echo the line '<?php $var = "abc"; ?>'  and this is also not possible?? Any ideas.
 [2012-01-23 22:30 UTC] gmblar+php at gmail dot com
This happens because the default filesystem (hfs+) is case insensitive.



include strtolower(realpath('b.php'));
include strtoupper(realpath('b.php'));




string(23) "/users/blar/sites/b.php"
string(23) "/USERS/BLAR/SITES/B.PHP"
PHP Copyright © 2001-2015 The PHP Group
All rights reserved.
Last updated: Sun Mar 01 15:01:54 2015 UTC