Bug #62917 [Com]: require() fails depending on PHP filename (includes ASCII 'µ' character)
| From: | matthew at slyman dot org | Date: | Fri, 24 Aug 2012 04:11:33 +0000 |
| Subject: | Bug #62917 [Com]: require() fails depending on PHP filename (includes ASCII 'µ' character) | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-172857@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=62917&edit=1
ID: 62917
Comment by: matthew at slyman dot org
Reported by: matthew at slyman dot org
Summary: require() fails depending on PHP filename (includes
ASCII 'µ' character)
Status: Open
Type: Bug
Package: Filesystem function related
Operating System: Windows 7
PHP Version: 5.4.6
Block user comment: N
Private report: N
New Comment:
This is an issue, partly because object/function names are permitted to have
symbols like "µ", and the object class autoloading system permits files to be
required automatically (where for example filename is identical to class name
defined in the PHP file). I haven't tested the autoloading system yet but it would
be nice to be able to include/require this file using traditional methods at this
point, and retain the convenient/logical class/file name "µtime" for
futureproofing.
Previous Comments:
------------------------------------------------------------------------
[2012-08-24 04:04:52] matthew at slyman dot org
Description:
------------
---
From manual page: http://www.php.net/function.require-once
---
Where PHP filename includes "µ" character, for example; calling
"require_once" on
that file results in an error message (require fails). Similar paths/filenames
without the special ASCII characters work under the same (Windows/XAMPP)
installation, and identical paths/filenames including the special characters work
under Linux.
Test script:
---------------
(Create a file called "microtime.php" and another file called "µTIME.php",
and put them in the C:/ drive root folder, or some other place where PHP files may be included
from.)
~~~
require_once('C:/microtime.php');//works
require_once('C:/µTIME.php');//results in error message, but only under Windows.
Expected result:
----------------
PHP file included.
Actual result:
--------------
ERROR MESSAGE:
~~~
Warning: require_once(C:/htdocs/[path_hidden]/µTIME.php): failed to open stream:
No such file or directory in C:\htdocs\[path_hidden]\[filename_hidden].php on line
...
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=62917&edit=1