![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 249 Pomógł: 0 Dołączył: 22.12.2011 Ostrzeżenie: (10%) ![]() ![]() |
Szukam wyjaśnienia funkcji __call. Wiem że ona woła obiekty następne po niej i w sposób niejawny je może przeładować czyli edytować w locie. Znalazłem taki kod lecz nie za bardzo go rozumiem - nie wiem czy jest on poprawny:
Mam pytanie dlaczego (array) jest w nawiasach zwracając tym samym NULL? Wypluwa taki błąd: Cytat Notice: Array to string conversion in C:\xampp\htdocs\Untitled-2.php on line 11
Array Fatal error: Call to a member function doRunTest() on null in C:\xampp\htdocs\Untitled-2.php on line 13 Ten post edytował MESSIAH :) 5.01.2015, 21:34:50 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 249 Pomógł: 0 Dołączył: 22.12.2011 Ostrzeżenie: (10%) ![]() ![]() |
Skoro $arguments jest tablicą to jak chcesz ją echo-wać? Bo chcę wyświetlić zawartość zmiennej. Zmieniłem na print_r i działa.
Jeżeli się nie mylę... _call jest wywoływana gdy wywolujesz nie istniejącą metodę. RunText() nie istnieje, więc wykonuje się __call, w którym zwracasz $this->xy, które jest NULL. Czego nie rozumiesz? edit: oznacza tyle, że $arguments musi być typu array. - mogę się mylić ;] Czyli (array) oznacza iż zmienna musi mieć taki typ? Nawet jak usunę NULL ze zmiennej to jest ten sam efekt bez różnicy czy jest wartość czy jej nie ma. Więc mam rozumieć że __call służy do nie istniejących metod? Ten post edytował MESSIAH :) 5.01.2015, 21:41:23 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 23:34 |