![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Przyjaciele php.pl Postów: 790 Pomógł: 7 Dołączył: 6.02.2003 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
Otóż mam sobie metodę klasy Member:
Wywołuję ją w sposób następujący:
I co dostaję? Cytat Argument 1 passed to Member::findByKey() must be an instance of string, string given ... I gdzie tu logika? Dodam tylko, że analogiczna sytuacja dla typu array działa. Daję na Hydepark, bo nie jest to dla mnie problem nie do rozwiązania. Traktuję to raczej jako ciekawostkę. Jak ktoś uzna, że trzeba przenieść, niech przeniesie. Ten post edytował seaquest 20.09.2007, 23:49:02 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
My się domagamy, bo robimy coś "więcej" niż PHP ("personal home page" czy jak to szło) ale przecież to co napisałem możliwość, czyli jak jest bez wymuszenia (czyli jak teraz bez nazwy klasy czy array) wtedy przyjmuje co dusza zapragnie, ale dać możliwość wymuszenia typu podstawowego, czy to int, string itd. Bo tak jak się chce być pewnym co się dostaje trzeba samemu sprawdzać typ... Typ zwracany jest również przydatny, bo wiadomo co na pewno zwróci, a wyjątki są w przeciwnym wypadku.
Do tego przy wymuszonych typach argumentów pojawia się przeciążenie, a to ułatwia czytanie kodu, bez zawiłych if'ów, zwiększa czytelność. Trzeba pamiętać, że reprezentujemy raczej grupę tych bardziej zaawansowanych programistów PHP, więc musimy też pamiętać o początkujących, a jak widać nawet w dziale PHP (nie początkujących) większość nawet brak typizacji niewiele ułatwia, więc dla nich wymuszone typy, przeciążenia, ba przeciążenia to coś już zupełnie abstrakcyjnego dla nich klasy i obiekty to coś na granicy zrozumienia (tak jak dla każdego który nie miał wcześniej styczności, pamiętam jak 4 lata temu tworzyłem pierwszą klasę, bo wszyscy mówili jakie to oh i ah, ale jakoś nie pojąłem idei, teraz się z tego śmieję (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) ) więc dla nich też trzeba zostawić furtkę. Bo PHP dzięki temu zyskał popularność, ale musi się też rozwijać. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 07:02 |