Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: DirectoryIterator i slashe pod win32
Forum PHP.pl > Forum > PHP
erix
Tworzę sobie instancję DirectoryIteratora.
  1. <?php
  2. $dir = new DirectoryIterator('DYSK:/gdzies');
  3. ?>

Wszystko niby OK, ale problem pojawia się, gdy chcę pobrać ścieżkę do konkretnego pliku:
  1. <?php
  2. //pętla
  3. $nazwa = $file->getPathname();
  4. //..
  5. ?>

Problem polega na tym, że otrzymuję trochę dziwną ścieżkę. Zamiast DYSK:/gdzies/plik.ext dostaję... DYSK:/gdzies\plik.ext.

Nie wiem, czy ja coś kwaszę, ale na razie - jedynym wyjściem jest sklecanie wszystkiego:
  1. <?php
  2. $nazwa = $dir->getPath().'/'.$dir->getFilename();
  3. ?>

Chciałbym, aby mój skrypt był w miarę uniwersalny (jeśli chodzi o migrowalność pomiędzy platformami Unix<->Win32). Wie ktoś może, jak sobie z tym poradzić w inny sposób niż "mój"?
revyag
Raczej chyba nie pasuje tu.
Przenoszę na php.
---
W sumie też miałem ten problem i po prostu zrobilem str_replace.

Przykład.
  1. <?php
  2. $sFname = str_replace('','/',$sFile->getPathName());
  3. ?>
erix
No, dla mnie to wielkiej różnicy nie zrobi...

Próbowałem z opendirectory.separator ustawionym na "/", ale ni kija, nie idzie. Chodzi mi o to, czy da się w jakiś sposób obejść to ograniczenie bez kombinowania?

Cytat
Przenoszę na php.

Ktoś walnął temat o DI na tym forum, to poszedłem w ślad. smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.