Mam dysk sieciowy zmapowany na literę dysku X: \ przechodzenie na zewnętrzny dysk twardy ze ścieżką "\\ X-Drive \ Public \ Data".PHP is_dir() zwraca false na dysku sieciowym Windows
Używam serwera Zend z Apache.
Moje polecenia PHP jest prosty
$isFolder = is_dir("x:/");
echo($isFolder); //FALSE
Co należy wiedzieć:
Kod:
$isFolder = is_dir("c:/");
echo($isFolder); //TRUE
działa zgodnie z oczekiwaniami.
Używam usługi Zend Apache jako administrator. Wiem, że to działa poprawnie, ponieważ w Menedżerze zadań proces httpd.exe pokazuje właściwego użytkownika.
Dysk jest rzeczywiście odwzorowany. Próbowałem mapować to z kilkoma użytkownikami, aby włączyć tego samego użytkownika, którego używa Zend Apache bez skutku.
Przeczytałem każdy post na ten temat, który mogłem znaleźć. Każdy napotkany problem istnieje z powodu uprawnień użytkownika lub literówki. Nie widzę, jak mój problem należy do żadnej z tych kategorii.
Próbowałem również:
system('net use X: "\\x-drive\public" password1 /user:username /persistent:no');
$isFolder(is_dir("x:/"));
echo($isFolder); //FALSE
Używam Windows Vista x64, a kod produkcyjny będzie działać w systemie Windows 7 x64.
Z jakimi innymi problemami można się natknąć?
Dzięki za zwięzły przykład i wyjaśnienie! $ isFolder = is_dir ("// NAS/Dysk główny"); var_dump ($ isFolder); // TRUE był dla mnie najlepszą drogą. Dzięki! – Wes