![]() |
![]() |
![]()
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: 677 Pomógł: 89 Dołączył: 31.08.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 249 Pomógł: 0 Dołączył: 22.12.2011 Ostrzeżenie: (10%) ![]() ![]() |
Cytat In other words, (array)$scalarValue is exactly the same as array($scalarValue). Niestety (array)$var to nie to samo co array ($var) Jak widać w moim przykładzie mam funkcję __call, która nadpisuje metody zdefiniowane później i dodaje wartości z $arguments: I gdy zmienię ten kod na przykład podany z cytatu: Nie zostaną prawidłowo dodane argumenty. Sądzę że istnieje jakaś różnicy między (array) a array(). |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Niestety (array)$var to nie to samo co array ($var) A wg. mnie tak. Dowód: Kod:
Wynik: Kod array(1) {
[0]=> string(5) "sting" } array(1) { [0]=> string(5) "sting" } ========= array(1) { [0]=> string(5) "sting" } array(1) { [0]=> string(5) "sting" } |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 07:25 |