PHP Framework

Tags:    php

<< < 12 > >>
Hej allesammen!

Jeg er ved at lave mit eget framework, først og fremmest for noget træning, dernæst at kunne bygge det op fra scratch og tune det så det passer mig.
Har valgt at bygge det i MVC pattern (Nogle andre gode forslag)
Har indtil videre fået et registry på plads og en enkelt database class.
Men har åbenbart ikke fået forstået MVC pattern ordentligt, for ved ikke hvor jeg skal placerer min database class. Skal det være i controllers eller i model?



I modellen... :)

Controlleren beder modellen om at loade sin data. Modellen loader så alt sin data uafhængigt af Controlleren.



Så hvad skal der være i Controlleren?



De-mystifiserer...

Controlleren er fjernbetjeningen...
Modellen er Antennen på fjernsynet og signalet er dataen fra db.
Viewet er så fjernsynet hvor billedet er resultatet..

Du klikker på fjernbetjeningen og bestemmer hvad du gerne vil se. Modellen henter derpå signalet og viewet viser dig det du ser.
Altså fortæller controlleren hvad modellen skal hente. Derpå kan controller overføre data fra modellen ud til viewet. Viewet finder så ud af hvordan data præsenteres.

Er det logisk? :)



Indlæg senest redigeret d. 22.10.2008 19:17 af Bruger #10216
Kort sagt indeholder controlleren alt logikken. Dvs. al koden som ikke har med import/eksport af data at gøre.

Modellen sørger for importering og eksportering af data til en form for database.

Viewet er mere eller mindre ren HTML med enkelte php-stykker til at echoe data ud med og lign.



Lidt offtopic men så alligevel ikke. Hvordan har du opbygget dit registry. Har ikke kigget så meget på det men jeg overvejede at lave et til mit eget framework da det virker som en effektiv måde at gemme data på tværs af klasser. Så hvordan har du lavet dit?



Indlæg senest redigeret d. 22.10.2008 21:36 af Bruger #3275
Jeg synes det var logisk :D

Viste dog godt hvordan det virkede, men dejligt skrevet!

Min lærer ville have kommenteret din forklaring således... :P

...Kreativt! Du får 12!



Kort sagt indeholder controlleren alt logikken. Dvs. al koden som ikke har med import/eksport af data at gøre.

Modellen sørger for importering og eksportering af data til en form for database.

Viewet er mere eller mindre ren HTML med enkelte php-stykker til at echoe data ud med og lign.



Lidt offtopic men så alligevel ikke. Hvordan har du opbygget dit registry. Har ikke kigget så meget på det men jeg overvejede at lave et til mit eget framework da det virker som en effektiv måde at gemme data på tværs af klasser. Så hvordan har du lavet dit?


Mit registry er noget lignende (forsimplet): Et array der indeholder klasser, som man kan store og get.



De-mystifiserer...

Controlleren er fjernbetjeningen...
Modellen er Antennen på fjernsynet og signalet er dataen fra db.
Viewet er så fjernsynet hvor billedet er resultatet..

Du klikker på fjernbetjeningen og bestemmer hvad du gerne vil se. Modellen henter derpå signalet og viewet viser dig det du ser.
Altså fortæller controlleren hvad modellen skal hente. Derpå kan controller overføre data fra modellen ud til viewet. Viewet finder så ud af hvordan data præsenteres.

Er det logisk? :)

Så jeg skal altså kun have én controller klasse?



Så jeg skal altså kun have én controller klasse?


Du skal have en pr. applikation ja. Laver du et galleri vil du have en galleri controller, laver du en blog har du en blog controller, osv.



Jamen så kan jeg slet ikke se formålet med en controller? Hvorfor ikke bare hente til view direkte fra model?



For så er ødelægger du ideen bag mvc.

En af ideerne bag mvc var at man skulle adskille logik, data og output fra hinanden.

Derfor skal der være en controller til at styre hvad brugeren anmoder, for derefter at sende data tilbage.

Hvis du skulle hive data direkte til at view, skulle du have både logik og output i samme fil, hvilket ofte bliver en rodet sag. ;)



<< < 12 > >>
t