![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 15.10.2006 Skąd: zewsząd :P Ostrzeżenie: (0%) ![]() ![]() |
Witam. Mam następujący kod:
W wyniku działania kodu uzyskuję napis: "Nie można otworzyć pliku." Gdy zastąpię ostatnią linijkę kodem "echo scanfile("qwerty.txt");" wszystko działa. Usuwając małpę przed "fopen" uzyskuję komunikat "(...)no such file on directory(...)". Co robię źle? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 657 Pomógł: 125 Dołączył: 29.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
zrób w destruktorze
var_dump($this->root); |
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
http://pl2.php.net/manual/en/language.oop5.decon.php
Cytat Note: Destructors called during the script shutdown have HTTP headers already sent. The working directory in the script shutdown phase can be different with some SAPIs (e.g. Apache). ? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 15.10.2006 Skąd: zewsząd :P Ostrzeżenie: (0%) ![]() ![]() |
dr_bonzo: Nie bardzo rozumiem o co ci chodzi.
Czy headery miałyby wpływ na czytanie plików? |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 657 Pomógł: 125 Dołączył: 29.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
Z tego co zrozumiałem:
Chodzi o to, że destruktory działają (m. in. w Apache) tak jakby w innym folderze, dlatego nie działa. Musisz dać ścieżkę bezwzględną. |
|
|
![]()
Post
#6
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
@Michu:
Tak, zwrocilem ci uwage na szczegoly w manualu dot. destruktorow. Prosty tescik i widac ze destruktory wywolywane poprzez zakonczenie sie skryptu (a nie przez unset itp), i dla php jako modul apacha - maja inna sciezke katalogu bierzacego (getcwd()) |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 15.10.2006 Skąd: zewsząd :P Ostrzeżenie: (0%) ![]() ![]() |
Czyli wstawienie unset($myobj) jest rozwiązaniem najprostszym. Dziękuję
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 873 Pomógł: 152 Dołączył: 9.04.2006 Skąd: Berlin Ostrzeżenie: (0%) ![]() ![]() |
Nie, ja bym dał bezwzględną ścieżkę... unset() to obejscie problemu na około.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 248 Pomógł: 38 Dołączył: 29.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Zamiast var $root używaj public/protected/private $root . Ten var to pozostałość po wcześniejszych wersjach PHP. Ostatnio zwrócili mi na to uwagę inni użytkownicy, więc przekazuję dalej (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 23:47 |