ID: 29797 Updated by: [EMAIL PROTECTED] Reported By: arnoud at procurios dot nl -Status: Open +Status: Bogus Bug Type: Directory function related Operating System: Windows XP PHP Version: 5.0.0 New Comment:
As far as I can see, PHP has nothing to do with it, as PHP just calls mkdir(supplied path). And PHP doesn't use DIRECTORY_SEPARATOR with mkdir(), but your system's mkdir() is failing to create directory "g/h". On the other side "g\h" is valid name for directory on Linux and mkdir("g\h") successfully creates it. Marking this report as bogus. Previous Comments: ------------------------------------------------------------------------ [2005-01-06 03:14:13] [EMAIL PROTECTED] Note: The actual constant is DIRECTORY_SEPARATOR. However, in PHP, in most (all?) cases \ and / are interchangable when dealing with the filesystem. Why shouldn't this be the case for mkdir? ------------------------------------------------------------------------ [2004-09-29 09:07:00] php at nowhere dot net The proper work around is to use the php defined constant PHP_DIR_SEPARATOR which is set according to the platform. ------------------------------------------------------------------------ [2004-09-01 16:56:11] alex dot pagnoni at solarix dot it Actual workaround is to check for underlying os (look inside $_ENV['OS']) and, if it is Windows, convert all forward slashes using str_replace(). ------------------------------------------------------------------------ [2004-08-23 14:41:27] arnoud at procurios dot nl Description: ------------ The 'mkdir' function doesn't function correctly on Windows when the path contains forward slashes. The part of the path with the forward slashes doesn't get created. Reproduce code: --------------- <? mkdir('c:\a\b\c\d', 0775, true); mkdir('c:\e\f\g/h', 0775, true); ?> Expected result: ---------------- Two directories should have been created: c:\a\b\c\d, and c:\e\f\g\h Actual result: -------------- Actual directories being created: c:\a\b\c\d, and C:\e\f ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=29797&edit=1