Artefakt cares about Your privacy
In order to offer access to a secure, functional and attractive service, we use identifiers sent by your device and may store or read small text files (e.g. cookies) contained on your device. Based on your consent, we will process personal data, such as unique identifiers, information sent by end devices for personalization of advertisements and content, statistical demographic information for traffic measurement, we will also analyze the usefulness of certain solutions of the service, their performance in order to improve user satisfaction - hereinafter: your Data. By clicking "Accept all" you consent to the processing of your data in a broad way, including sharing it with third parties - a list of which can be found in the Privacy Policy. By clicking "Modify" you can make your choice of settings. By clicking "Necessary only," you refuse to consent to the use of optional settings and the transfer of additional data. You can make changes to your choices at any time by clicking the padlock button in the corner of the page. Regardless of your preference settings on our site, you can also manage your browser`s privacy settings. For more information about data processing, see our Privacy Policy.
Manage preferences
Select the consents of your choice
Necessary
Necessary scripts and data stored on the end device contribute to the security and usability of the website by enabling secure access to basic functions such as site navigation and access to specific areas of the website. The website cannot be properly displayed without this group.
Functionality
This is data used to personalize your use of our website and to remember choices you make while using our website. For example, we may use functional cookies to remember your language preferences or to remember your login information, making it easier for you to use the site.
Analytics
Scripts and data used to collect information to analyze site traffic and how users use the site, how they came to the site, and to create aggregate demographic statistics about users. Analytical cookies and similar technologies allow us to measure the effectiveness of actions taken and content presented.
Marketing
Scope responsible for displaying personalized ads that may be of interest to the user based on browsing history and habits and demographic criteria. Also, third-party files that, in conjunction with files installed while browsing other websites, profile the user, providing him or her with the marketing, advertising and retargeting content deemed most appropriate.
Personalize
Accept choices
Accept all

Marketing internetowy w praktyce!

Zarejestruj się do bezpłatnej platformy e-learningowej.

Zarejestruj się bezpłatnie

Kanał YouTube – Efektywna firma w necie

Wskazówki, rozmowy, inspiracje

Subskrybuj kanał na YouTube i bądź na bieżąco!

Bezpłatny audyt SEO

Sprawdź, jak Twoja strona radzi sobie w sieci!

Audytuj bezpłatnie
27.11.2014 | czas czytania: 5 min | Web Design | autor: Artefakt

Kontroler w Zend Framework

Kontroler w Zend Framework

Zend Framework jest nowoczesnym narzędziem, silnie zorientowanym obiektowo, które w implementacji bibliotek wykorzystuje obiektowe wzorce projektowe. Zend Framework umożliwia m. in. tworzenie aplikacji w architekturze MVC (Model-Widok-Kontroler).

MVC jest wzorcem projektowym, którego istotą jest oddzielenie warstwy aplikacji od warstwy prezentacji, co realizuje się poprzez podział aplikacji na trzy warstwy:

  • Model – jest częścią aplikacji, która definiuje jej podstawową funkcjonalność. Zazwyczaj jest to logika biznesowa aplikacji oraz procedury dostępu do bazy danych.
  • Widok – definiuje interfejs aplikacji, który jest prezentowany użytkownikowi. Zazwyczaj kontroler przekazuje dane do widoku, który następnie przedstawia je w określonym formacie. Przykładowo strona internetowa zbudowana w oparciu o ten wzorzec projektowy zawiera w widoku znaczniki HTML, podczas gdy widok kanału RSS jest dokumentem XML o ściśle określonym formacie.
  • Kontroler – stanowi warstwę spajającą ze sobą pozostałe warstwy aplikacji. W typowej aplikacji kontroler wykonuje działania na modelu (np. dodawanie, edycję oraz usuwanie), ustala na podstawie żądania HTTP widok do wyświetlenia oraz przekazuje do niego dane pobrane poprzez model danych.

W Zend Framework implementacja kontrolera jest zbiorem klas i interfejsów programistycznych wzajemnie ze sobą powiązanych. Niniejszy artykuł charakteryzuje poszczególne elementy tworzące kontroler w Zend Framework:

 

  • Zend_Controller_Front – implementuje wzorzec projektowy FrontController, w którym wszystkie żądania HTTP odebrane przez serwer WWW przechodzą przez dokładnie jeden obiekt. Takie rozwiązanie zapobiega powielaniu kodu. Jest głównym komponentem kontrolera, który w trakcie działania tworzy instancje pozostałych elementów tworzących kontroler oraz przekazuje do nich sterowanie. Po przekazaniu żądania do aplikacji Zend_Controller_Front ustala wykonawcę akcji (Zend_Controller_Action), do którego następnie deleguje żądanie.
  • Zend_Controller_Request_Abstract – obiekt żądania, reprezentuje środowisko dla żądania, udostępnia interfejs innym obiektom do ustawiania i pobierania nazwy kontrolera i akcji oraz opcjonalnych parametrów żądania. Domyślnie wykorzystywany jest Zend_Controller_Request_Http, który stanowi środowisko dla żądania HTTP.
  • Zend_Controller_Router_Interface – komponent przeznaczony do definiowania adresów aplikacji. Wykorzystywany podczas routingu do ustalenia nazwy kontrolera i jego akcji, do których zostanie przekazane sterowanie. Po zakończeniu routingu nazwa kontrolera i akcji oraz opcjonalne parametry żądania są ustawiane w obiekcie żądania. Domyślnym routerem w Zend Framework jest Zend_Controller_Router_Rewrite. Przykładowo adres domain. com/article/edit/id/10 zostanie zdekomponowany przez wspomniany router w następujący sposób: nazwa kontrolera – article, nazwa akcji – edit, parametr id o wartości 10.

  • Zend_Controller_Dispatcher_Interface – komponent, którego celem jest ustalenie pliku kontrolera, nazwy klasy kontrolera oraz jego metody (akcji) do wywołania. Komponent ten korzysta z informacji zawartych w obiekcie żądania. Domyślnie w tym procesie framework korzysta z klasy Zend_Controller_Dispatcher_Standard. Przykładowo dla kontrolera article i akcji edit nazwa klasy kontrolera i jego metody (akcji) będą miały odpowiednio postać: ArticleController oraz editAction.
  • Zend_Controller_Action – komponent stanowiący wykonawcę akcji, miejsce w aplikacji, gdzie kontroler wchodzi w interakcje z pozostałymi warstwami aplikacji: modelem i widokiem. Każdy kontroler jest pojedynczą klasą dziedziczącą po klasie Zend_Controller_Action i zawiera definicję przynajmniej jednej akcji.
  • Zend_Controller_Response_Abstract – obiekt odpowiedzi, reprezentuje środowisko dla odpowiedzi, pobiera i zwraca odpowiedź z Zend_Controller_Action. Domyślnie wykorzystywanym obiektem odpowiedzi w aplikacjach internetowych jest Zend_Controller_Response_Http przechowujący nagłówki HTTP i treść, które są ostatecznie odbierane np. przez przeglądarkę internetową.

Podsumowując, pomiędzy odebraniem przez serwer żądania HTTP a wysłaniem odpowiedzi ma miejsce szereg czynności wykonywanych przez powyżej opisane komponenty. Zend_Controller_Front po otrzymaniu żądania ustala na podstawie obiektu Zend_Controller_Router_Rewrite wykonawcę akcji – nazwę kontrolera i jego akcji.

Informacja ta jest następnie przekazywana do obiektu Zend_Controller_Dispatcher_Standard, który wywołuje odpowiednią akcję kontrolera. Po wykonaniu akcji sterowanie wraca do obiektu Zend_Controller_Front.

Zapisz się na nasz bezpłatny newsletter i poznaj sprawdzone wskazówki marketingowe!

Pozostałe artykuły

Co to jest KPI i jak mierzyć efektywność działań? 04.04.2025 | czas czytania: 5:00 min | Analityka

Co to jest KPI i jak mierzyć efektywność działań?

Masz wrażenie, że Twoje działania w firmie nie przynoszą oczekiwanych rezultatów? Czujesz się zagubiony w morzu danych i nie wiesz, jak ocenić efektywność swoich działań? Nie jesteś sam. Wiele osób boryka się z tym problemem. Na szczęście istnieje skuteczne narzędzie, które może Ci pomóc – KPI. W tym artykule dowiesz się, czym są Kluczowe Wskaźniki Efektywności i jak z ich pomocą mierzyć sukces swoich działań. Dzięki temu zyskasz jasny obraz sytuacji i będziesz mógł podejmować lepsze decyzje biznesowe. Czytaj wiecej
Ebook – co to jest i jak wykorzystać go w content marketingu? 02.04.2025 | czas czytania: 5:00 min | Inne

Ebook – co to jest i jak wykorzystać go w content marketingu?

Cyfrowe publikacje oferują nie tylko wygodę czytania, ale również ogromne możliwości dla firm i twórców treści. E-booki są istotnym elementem współczesnego marketingu. Szczególny wzrost ich popularności związał się z wybuchem pandemii. Wg badań, aż 5% czytelników wybiera taki format książek. Czym dokładnie jest e-book oraz jak skutecznie wykorzystać go w strategii content marketingowej, aby przyciągnąć i zaangażować odbiorców? Sprawdzamy! Czytaj wiecej
crm co to jest 31.03.2025 | czas czytania: 5:00 min | Inne

Czym jest CRM i dlaczego jest niezbędny w sprzedaży?

Efektywne zarządzanie relacjami z klientami stało się nieodłącznym elementem sukcesu każdej firmy. CRM, czyli Customer Relationship Management, to narzędzie, które pozwala na lepsze zrozumienie potrzeb klientów, budowanie trwałych relacji oraz zwiększenie sprzedaży. Dzięki CRM, firmy mogą skuteczniej zarządzać danymi klientów, analizować ich zachowania i dostosowywać swoje działania marketingowe. W niniejszym artykule przyjrzymy się bliżej, czym dokładnie jest CRM i dlaczego jego wdrożenie jest niezbędne w procesie sprzedaży. Czytaj wiecej

Potrzebujesz skutecznych rozwiązań marketingowych? Masz je na wyciągnięcie ręki. Nasi eksperci czekają na Twój sygnał. Porozmawiamy?

Zamów rozmowę
Kontakt