Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][CLASSES] znak _ i jego znaczenie
Koldy
post
Post #1





Grupa: Zarejestrowani
Postów: 98
Pomógł: 1
Dołączył: 28.06.2009
Skąd: Great Britan

Ostrzeżenie: (0%)
-----


Witajcie,

ucze, ucze się o tych nieszczęsnych klasach i często w kodzie spotykam znak: ' _ ' (twarda spacja), no i tak na prawdę na początku myślałem, że on jest dodawany do konstruktorów, ale jednak nie, często zmienne też posiadają ten znaczek.

Więc pytanie brzmi, kiedy dajemy twarda spacje? w jakich funkcjach i jakich zmiennych?

Pzdr.
Go to the top of the page
+Quote Post
krzywy36
post
Post #2





Grupa: Zarejestrowani
Postów: 370
Pomógł: 43
Dołączył: 1.12.2007
Skąd: Kędzierzyn Koźle

Ostrzeżenie: (0%)
-----


przyjęło się, że składowe (zmienne) prywatne nazywa się zaczynając właśnie od _, czyli na przykład
  1. class Test
  2. {
  3. private $_zmiennaPrywatna;
  4. public $zmiennaPubliczna;
  5. }


do tego istnieją jeszcze "metody magiczne" których nazwy zaczynają się od właśnie dwóch podkreślników np. __set(), __get() itd. Ucząc się programowania obiektowego na pewno nieraz się na takie natkniesz (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
Sephirus
post
Post #3





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


I jeszcze dodatkowo istnieją stałe PHP korzystajace z __ też można je nazwać stałymi magicznymi bo mają różną wartość w różnych plikach itd... są to np.: __CLASS__, __FILE__ itd...
Go to the top of the page
+Quote Post
Crozin
post
Post #4





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


1. "_" to znak podkreślenia, nie twarda spacja.
2. Za czasów PHP4 nie istniały modyfikatory dostępu (public/private/protected), wtedy też przyjęło się by zmienne i metody niepubliczne poprzedzać tym znakiem. W tej chwili nie ma już takiej potrzebny, ale niektórym nadal został ten nawyk - osobiście odradzałbym stosowanie tego.
3. W PHP twórcy "zastrzegli" sobie przedrostek "__" (podwójny znak podkreślenia) dla wszystkich "wbudowanych" elementów (metody magiczne, konstruktory, stałe magiczne itp.).
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 10:45