Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Opuźnione utworzenie katalogu
Forum PHP.pl > Forum > PHP
PiratNowegoPokolenia
  1. <?php
  2. class FDirectory
  3. {
  4. protected $_sPath;
  5.  
  6. private $rHandle;
  7.  
  8. public static function create( $sPath )
  9. {
  10. if( is_dir( $sPath ) )
  11. throw new FException( "Direcotry {$sPath} just exist" );
  12.  
  13. mkdir( $sPath );
  14.  
  15. return new self( $sPath );
  16. }
  17.  
  18. public function __construct( $sPath )
  19. {
  20. $this->_sPath = realpath( $sPath );
  21.  
  22. if( !is_file( $this->_sPath ) )
  23. throw new FException( "Direcotry {$this->_sPath} does not exist" );
  24. }
  25. }
  26. ?>


Duży problem... przy wykonaniu create wywala mi exception `Direcotry ##### does not exist` a to dlatego że nie został jeszcze utworzony. Tworzy się trochę za późno blink.gif
Użycie sleep() chyba nie pomoże bo bóg wie ile ten katalog ma się zamiar tworzyć worriedsmiley.gif

Może ktoś coś poradzić ?
nospor
Ale oczym ty mowisz? Przeciez ty najpierw sprawdzasz czy istnieje a dopiero potem go tworzysz. No to sie nie dziw ze przed sprawdzeniem ci go jeszcze nie utworzyl...

edit: choc moze sie myle, bo widze ze w create walisz konstruktor czyli najpierw tworzysz a potem sprawdzasz. Byc moze ci sie katalog nie utworzyl bo jakies bledy są. Sprawdź.
A byc moze jest tak jak mowi mike smile.gif
mike
A pokaż jak to wykonujesz.
Bo na moje oko tworzysz obiekt (konstruktor wywala Ci komunikat) a dopiero potem wykonujesz create() na obiekcie.
wojski696969
A ja polecam super ksiązkę która rozwiąże twój problem:

Słownik Ortograficzny

bo chyba opóźnione jest te twoje "opuźnienie" tongue.gif
PiratNowegoPokolenia
Literówki się każdemu zdarzają... słownik tu nie pomoże

Bardziej okulary :/ Szczerze mówiąc to nie wiem jak to zrobiłem i do takich wniosków doszedłem ale to chyba chodziło o to : if( !is_file( $this->_sPath ) )

sorka za problem
PS: Pisałem że wykonuje najpierw create..
wojski696969
No to po mojemu skrypt nie może iść dlaej zanim nie utworzy katalogu... Wtedy dopiero odpowiednia funkcja zwraca wartość czy operacja zakończyła się sukcesem i skrypt kontynuuje działanie...
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.