Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] __get, __set czy set(), get() ?
aras785
post
Post #1





Grupa: Zarejestrowani
Postów: 859
Pomógł: 177
Dołączył: 29.10.2009

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


Witam. Według was co jest lepiej używać? Podobno szybciej działa zwykła funkcja niż metody magiczne.
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Szybciej dziala tez czysty assembler, a jednak malo kto w assemblerze pisze wink.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
aras785
post
Post #3





Grupa: Zarejestrowani
Postów: 859
Pomógł: 177
Dołączył: 29.10.2009

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


Masz rację wink.gif To co polecasz?
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Zalezy jak lezy wink.gif
Jesli zalezy ci na podpowiadaniu w edytorze to robisz bez magii lub bawisz sie w komentarze.
Jak ci nie zalezy to robisz magie
Jak lubisz duzo pisac metod to robisz bez magii
itd itd smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Crozin
post
Post #5





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

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


O ile nie jesteś wstanie podać bezwzględnego argumentu za użyciem metod magicznych w danym przypadku nie powinieneś ich stosować. A że znaleźć taki argument bardzo ciężko można niemal z definicji powiedzieć, że nie powinieneś korzystać z metod magicznych.
Go to the top of the page
+Quote Post
aras785
post
Post #6





Grupa: Zarejestrowani
Postów: 859
Pomógł: 177
Dołączył: 29.10.2009

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


Chodzi mi o przekazywanie zmiennych z kontrolera do widoku. Czy używać
  1. $this->view->zmienna = 'Cos';


czy

  1. $this->view->set('zmienna','Cos');


no i przy wyświetlaniu jest trochę brzydko czyli:

  1. $this->get('zmienna')['tablica'] //jeśli zmienna jest zmienną tablicową


Ten post edytował aras785 31.08.2013, 18:54:41
Go to the top of the page
+Quote Post
Crozin
post
Post #7





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

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


W takim wypadku tylko i wyłącznie get()/set().
Cytat
no i przy wyświetlaniu jest trochę brzydko czyli:
  1. $this->get('zmienna')['tablica'] //jeśli zmienna jest zmienną tablicową
Taki zapis jest jak najbardziej poprawny i nie ma w nim nic "brzydkiego". Wiem, że w PHP jest on dostępny od niedawna stąd może u osób związanych wyłącznie z PHP może wydawać się on nienaturalny, ale taka konstrukcja jest najbardziej poprawną formą.
Go to the top of the page
+Quote Post
aras785
post
Post #8





Grupa: Zarejestrowani
Postów: 859
Pomógł: 177
Dołączył: 29.10.2009

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


Ok. W takim razie zostanę przy tym smile.gif

A może tablice zamieniać na obiekt i w ten sposób otrzymać:

  1. $this->get('zmienna')->key


Czy to się mija z celem? Pozdrawiam smile.gif
Go to the top of the page
+Quote Post
Crozin
post
Post #9





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

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


Jeżeli miałbyś dokonywać konwersji wyłącznie w celu zmiany składni to tak, mija się to z celem.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 23:35