![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 3 Dołączył: 25.05.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mam pytanie odnoścnie zachowania PHP. Prosty przykład:
Moje pytanie, co sie stanie jeśli przypiszę wartość do właściwości klasy, która nie została wcześniej zadeklarowana? Spotkałem taki przypadek w jednym z moich skryptów przez przypadek i zdziwiło mnie że nie wyrzuciło żadnego błędu. Czy ta zmienna staje się automatycznie nową składową klasy? Czy różni się ona czymś od tej wcześniej zadeklarowanej? Zdziwiło mnie to strasznie, myślałem, że przynajmniej jeśli chodzi o klasy PHP będzie bardziej restrykcyjne niż zwykle. Nie wiem czy to ma znaczenie ale serwer stoi na Windowsie (IIS 6.0, PHP 5.2.14) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Będzie to zwykła właściwość publiczna.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 623 Pomógł: 79 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
@extreme-dh: ja dodam jeszcze od siebie, że jako (były) programista c++, to zachowanie php też było dla mnie lekkim szokiem:) Z początku traktowałem to jako głupotę, ale z czasem się przyzwyczaiłem.
Robiąc aplikacje webowe musisz się do tego przyzwyczaić z jeszcze jednego powodu - podobnie działa javascript. Możesz do dowolnego obiektu (instancji klasy) dołożyć dowolne zmienne (a także metody), np. tak: Tak więc w przypadku aplikacji webowych z użyciem php+js musisz nieco zmienić tok myślenia i się przyzwyczaić(IMG:style_emoticons/default/smile.gif) W js możesz nawet dołożyć metody do wbudowanych klas - używając prototype. Ten post edytował konrados 25.10.2011, 09:47:32 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 3 Dołączył: 25.05.2008 Ostrzeżenie: (0%) ![]() ![]() |
No tak, faktycznie, widać w PHP poszli tropem JS i AS w sumie też.
Niezła "zaskoczka" z mojej strony (IMG:style_emoticons/default/smile.gif) Szczerze powiedziawszy to nie spodziewałem się takiego zachowania. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 27.09.2025 - 15:34 |