Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] namespace jak tego użwać w MVC?
--jagoda--
post
Post #1





Goście







Jak użyć przestrzeni nazw, zakładając że korzystam z SPL w oparciu o MVC.

Mam kontroler:

  1. class kontroler
  2. {
  3. // cokolwiek
  4. }


modele itd...

Jednak gdzie zdeklarować namespace? i gdzie i czy w ogóle użyć use? Wiem że to może i banalne, ale po lekturze php.net i innych blogów o tym robi mi się już mętlik, może ktoś to wyjąśnić łopatologicznie?
Go to the top of the page
+Quote Post
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


Poczytaj sobie dokumentację http://packages.zendframework.com/docs/lat...uick-start.html i podstawy http://www.php.net/manual/en/language.namespaces.php bo podstawowej wiedzy ci brakuje.
Go to the top of the page
+Quote Post
--jagoda--
post
Post #3





Goście







Nadal mi to niewiele mówi. Mam definiować namespace w każdej klasie? ale jak potem się to dego odwoływać z poziomu routingu?
Go to the top of the page
+Quote Post
viking
post
Post #4





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


Taki urok tego. Tak samo jak powtarzanie po 1000x use \ciągle\to\samo. Niestety namespace'y w PHP to jedna wielka porażka. Poczytaj dokumentację dużego frameworka (podałem ci Zenda) to zrozumiesz więcej.
Go to the top of the page
+Quote Post
Spawnm
post
Post #5





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Lepiej w kilku klasach zadeklarować use \ciągle\to\samo, niż co kilka linijek pisać ciągle_to_samo();
Go to the top of the page
+Quote Post
viking
post
Post #6





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


@Spawnm: A jest jakaś różnica? W PHP to tylko nic nie znaczący identyfikator. Co więcej \a\b\c nie jest w żaden sposób związany z \a czy \a\b.
Go to the top of the page
+Quote Post
--jagoda--
post
Post #7





Goście







Dochodzę do wniosku że to się po prostu nie opłaca. Przestrzeń nazw też może być kolizyjna z nazwą klasy. Używanie use \cos\cos2\cokolwiek jest dla mnie równoznaczne z cos_cos2_cokolwiek() a i sama przebudowa SPL loadera pod namespace jest kłopotliwa.. wolę pozostać przy swojej hermetyzacji kodu gdzie pierw sprawdzam klasy core fw, później kontrolery i gdy ten zostanie znaleziony rejestruję model.

Nie bardzo wiem jak przestrzeń nazwy miałaby mi cokolwiek ułatwić... po prostu nie rozumiem.
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: 22.08.2025 - 18:32