Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Sterowanie klasą aplikacji w PHP5
lgh
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 9.03.2012

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


Witam.

Może na początek chciałbym się przywitać z wszystkimi forumowiczami, czytającymi ten wątek.

Mam taki konkretnie problem/pytanie.

Dotychczas pisałem sobie aplikacje w PHP w taki sposób, że w katalogu głównym umieszczałem plik index, w nim znajdowała się pętla sterująca aplikacją - reagująca na różne wywołania zmiennych przekazywanych przy pomocy metod POST i GET.

Taka pętla wyglądała mniej więcej tak:
  1.  
  2. require 'PlikFunkcji.php';
  3.  
  4. if (isset($_GET['id']))
  5. switch ($_GET['id']){
  6. case 'pobierzDane': pobierzDane(); // funkcja opisana w pliku: PlikFunkcji.php
  7. break;
  8. default: zrobCosInnego();
  9. }


Dotychczas, gdy pisałem sobie korzystając z całego dobrodziejstwa skryptowego PHP wszystko działało dla mnie idealnie. Teraz chciałbym popróbować się z obiektowym PHP i w zasadzie zastanawiam się, jak miałoby odbywać się sterowanie aplikacją. Czy w pliku index powinna być identyczna drabinka, tylko odwołująca się do metod klasy, czy też całą taką drabinkę mógłby "wcisnąć" do którejś z metod klasy zawierającej interfejs aplikacji?

Na chwilę obecną intuicja podpowiada mi, że może powinno udać się wcisnąć drabinkę przed deklaracją klasy do pliku z klasą, ale nie wiem... Może są jakieś bardziej eleganckie metody, aby gdzieś umieścić to sterowanie?
Go to the top of the page
+Quote Post
by_ikar
post
Post #2





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Podejrzyj jak to jest robione w najpopularniejszych frameworkach. Dodatkowo, switch to nie jest pętla, a instrukcja warunkowa. Kluczowe słowa które powinny cię zainteresować: php router, horde routes, mvc, framework. Przestudiuj te kilka zagadnień to powinieneś kilka rzeczy zrozumieć.
Go to the top of the page
+Quote Post
Lorum3
post
Post #3





Grupa: Zarejestrowani
Postów: 86
Pomógł: 5
Dołączył: 10.12.2011
Skąd: Poznań

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


Szczególnie dobrym rozwiązaniem w programowaniu obiektowym jest MVC.

Poniżej wrzucam Ci przykład kontrolera login.php ( w fazie produkcyjnej) w mojej aplikacji, powinien pozwolić Ci wyobrazić sobie jak to powinno działać.

  1. tutaj był kod :- )


Ten post edytował Lorum3 9.03.2012, 19:29:24
Go to the top of the page
+Quote Post
lgh
post
Post #4





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 9.03.2012

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


Ok. Wydaje mi się, że zakumałem - wiem gdzie zacząć. Dzięki za pomoc.

Znaczy się zajrzałem do horde routes i znalazłem jeszcze coś takiego:
https://github.com/robap/php-router

Poza tym, dla wszystkich, którzy zmagają się z podobnymi do moich problemami, to znalazłem nawet wskazówkę w angielskiej wikipedii:
http://en.wikipedia.org/wiki/Front_Controller_pattern

Jeszcze raz dzięki za pomoc.

Ten post edytował lgh 9.03.2012, 19:34:20
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: 25.08.2025 - 07:16