Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Opuźnione utworzenie katalogu
PiratNowegoPokol...
post
Post #1





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 12.10.2006

Ostrzeżenie: (0%)
-----


  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 (IMG:http://forum.php.pl/style_emoticons/default/blink.gif)
Użycie sleep() chyba nie pomoże bo bóg wie ile ten katalog ma się zamiar tworzyć (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif)

Może ktoś coś poradzić ?

Ten post edytował PiratNowegoPokolenia 31.07.2007, 08:09:15
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




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 (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
mike
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


A pokaż jak to wykonujesz.
Bo na moje oko tworzysz obiekt (konstruktor wywala Ci komunikat) a dopiero potem wykonujesz create() na obiekcie.
Go to the top of the page
+Quote Post
wojski696969
post
Post #4





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 31.07.2007

Ostrzeżenie: (10%)
X----


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" (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
PiratNowegoPokol...
post
Post #5





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 12.10.2006

Ostrzeżenie: (0%)
-----


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..
Go to the top of the page
+Quote Post
wojski696969
post
Post #6





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 31.07.2007

Ostrzeżenie: (10%)
X----


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...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.01.2026 - 04:43