Edit report at https://bugs.php.net/bug.php?id=61909&edit=1

 ID:                 61909
 Updated by:         larue...@php.net
 Reported by:        david at panmedia dot co dot nz
 Summary:            PHP realpath on Windows Case Issue
 Status:             Open
 Type:               Bug
 Package:            Filesystem function related
 Operating System:   Windows Vista/7
 PHP Version:        Irrelevant
 Block user comment: N
 Private report:     N

 New Comment:

path in windows is case insensitive..


Previous Comments:
------------------------------------------------------------------------
[2012-05-02 17:46:25] david at panmedia dot co dot nz

On further investigation I have noticed that on Windows symlinks are only 
followed 1 level deep:

// F:\>mkdir link-target
// F:\>mklink /D link f:\link-target 
// F:\>mklink /D link2 f:\link

$dir = realpath('f:\link2');
var_dump($dir);

$dir = realpath($dir);
var_dump($dir);

$dir = realpath($dir);
var_dump($dir);

// string 'f:\link' (length=7)
// string 'f:\link-target' (length=14)
// string 'F:\link-target' (length=14)

------------------------------------------------------------------------
[2012-05-02 17:37:52] david at panmedia dot co dot nz

Description:
------------
I have a symlink on my Windows server which was made like this:

F:\>mkdir link-target
F:\>mklink /D link f:\link-target 

(Note the lower case f: in the symlink target)

In PHP I run this:

$dir = realpath('f:\link');
var_dump($dir);

$dir = realpath($dir);
var_dump($dir);

Which outputs:

string 'f:\link-target' (length=14)
string 'F:\link-target' (length=14)

Notice the change in case on the second realpath.

The expected output is:

string 'F:\link-target' (length=14)
string 'F:\link-target' (length=14)

Test script:
---------------
<?php
// F:\>mkdir link-target
// F:\>mklink /D link f:\link-target 

$dir = realpath('f:\link');
var_dump($dir);

$dir = realpath($dir);
var_dump($dir);

Expected result:
----------------
string 'F:\link-target' (length=14)
string 'F:\link-target' (length=14)

Actual result:
--------------
string 'f:\link-target' (length=14)
string 'F:\link-target' (length=14)


------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=61909&edit=1

Reply via email to