![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 146 Pomógł: 0 Dołączył: 20.04.2002 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Witam, zaczynam naukę obiektowego PHP5, na samym początku napotkałem już problemy - php zwraca błąd, które
Zwraca mi błąd: Kod Fatal error: Cannot use object of type miasto as array in c:\wamp\www\class\miasto.class.php on line 12 Google nie wyrzucają żadnych istotnych informacji - pod jakim hasłem mogę szukać jakichkolwiek wskazówek? -------------------- Krzysztof Wójcik
Zend Certified Engineer |
|
|
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Komunikat oznacza, że: Próbujesz użyć obiektu klasy miasto jako tablicy.
Nie możesz tego zrobić. Napisz jeszcze która linijka z przedstawionego kodu jest tą 12-tą z komunikatu. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 146 Pomógł: 0 Dołączył: 20.04.2002 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Linia 12 to jest return...
-------------------- Krzysztof Wójcik
Zend Certified Engineer |
|
|
![]()
Post
#4
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Prawdopodobnie zmienna $miasto to obiekt a Ty chcesz dostać sie do jego pól traktując go jako tablicę.
Żeby dostać się do pól wojewodztwo, nazwa musisz zrobić tak:
o ile to własnie w tym problem. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 146 Pomógł: 0 Dołączył: 20.04.2002 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Nie, to jest tablica.
![]() -------------------- Krzysztof Wójcik
Zend Certified Engineer |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 1 Dołączył: 23.01.2004 Ostrzeżenie: (0%) ![]() ![]() |
abstrahując od tego czy to obiekt czy nie global bije po oczach, raczej nie używaj tego,a obiekt przekaż jako parametr metody
Ten post edytował ebe 21.09.2005, 22:37:26 -------------------- Słyszałem, że macie tutaj jakieś takie php... fajne to, dobre to jest?
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Dla pewnosci daj print_r( $miasto ) lub var_dump( $miasto ) przed returnem.
Co do global: da sie wszysztko napisac bez uzywania tej konstrukcji, a poza tym jest to zaprzeczenie programowania obiektowego. -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 487 Pomógł: 7 Dołączył: 7.01.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Ja dodam, że używanie GLOBAL w metodach jakiejkolwiek klasy to na prawdę zły nawyk, którego powinno się unikać. Z tąd niedaleka droga do korzystania z klas jako grup funkcji, które praktycznie nie mają nic wspólnego...
GLOBAL w klasach i funkcjach mówimy stanowcze NIE Ten post edytował splatch 22.09.2005, 09:26:07 -------------------- Łukasz Dywicki
Independent Java and open source software consultant. Blog - Java, OSGi, integracja oprogramowania.. |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Nie, to jest tablica. Cały kod jest wyżej, jak dla mnie to tam nie ma żadnych obietków wewnątrz klasy... Caly kod jest powyżej... Hmmm. Tylko w tym kodzie, a i owszem tworzyż zmienną miast, ale jest ona :1) wykomentowana, a co za tym idzie wogóle nie deklarowana 2) użyta poza jakąkolwiek funkcją. poazatym miasto tak nazywa sie twoja klasa, a ze nigdzie nie ma zmiennej $miasto, wiec on moze bieże sobie to jaką obiekt tej klasy. Któtko mówiąc Twoj kod nie trzyma się kupy -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]() ![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 569 Pomógł: 0 Dołączył: 17.08.2003 Skąd: Dąbrowa Górnicza Ostrzeżenie: (0%) ![]() ![]() |
Cytat(nospor @ 2005-09-22 10:31:52) ... poazatym miasto tak nazywa sie twoja klasa, a ze nigdzie nie ma zmiennej $miasto, wiec on moze bieże sobie to jaką obiekt tej klasy. Któtko mówiąc Twoj kod nie trzyma się kupy nospor nie wpadajmy w paranoje podobienst nazw, wychodzilo by z tego ze to bug w php a tego nie podejzewam. Niech pokaze wynik var_dump($miasto) po linijce z global (brrrrr rzeczywiscie jakos dziwnie sie czuje to widzac) i po tym bedzie mozna okreslic co jest nie tak i przydalo by sie zobaczyc cala klase tak jak dziala a nie wyklomentowana bog wie gdzie i jak. Problem jest nie w pelni przedstawiony i tyle. -------------------- Warsztat: Linux: PHP, MySQL, Apache, NetBeans, C++, Qt-Creator
Użytkownik, słowo którego specjaliści IT używają, gdy chcą powiedzieć idiota Zarządzaj swoim budżetem domowym |
|
|
![]()
Post
#11
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
@Sh4dow pewnie masz rację. Akurat to zdanie pisałem bez większego przekonania. Mówi że cały kod jest podany, więc smaruję względem tego, ale pewnie jak zwykle nie wszystko nam pokazano.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 27.06.2025 - 13:50 |