Phalcon - kontrolery
W ramach MVC „C” oznacza kontroler, który odnosi się do rozdzielnic aplikacji internetowej. Działania podejmowane przez kontroler pomagają w przekazywaniu parametrów do widoku, aby mógł on wyświetlać i odpowiednio reagować na dane wejściowe użytkownika.
Na przykład, jeśli zarejestrujemy się za pomocą formularza rejestracyjnego, który zawiera dane użytkownika, takie jak nazwa użytkownika, adres e-mail i hasło, i klikniemy przycisk Prześlij, dane wprowadzone lub opublikowane przez użytkownika są przesyłane za pośrednictwem kontrolera za pomocą powiązana czynność lub funkcja.
Funkcje kontrolera
ZA controller akceptuje dane wejściowe z widoku i współdziała z powiązanym modelem.
Pomaga w aktualizowaniu stanu modelu poprzez wysyłanie poleceń do modelu. Może również wysyłać polecenia do skojarzonego widoku, co pomaga w zmianie prezentacji widoku zgodnie ze stanem modelu.
Kontroler działa jako pośrednik między modelem a widokiem.
Przepływ pracy MVC w Phalcon
Poniższa ilustracja przedstawia przepływ pracy MVC w Phalcon
Kroki tworzenia kontrolera w Phalcon
Step 1- Przekieruj do ścieżki projektu za pomocą wiersza poleceń. Zobacz poniższy zrzut ekranu.
Jak widać na powyższym zrzucie ekranu, „demo” to projekt powiązany z frameworkiem Phalcon PHP.
Step 2 - Użyj następującego polecenia, aby utworzyć skojarzony kontroler.
phalcon controller <controller-name>
Poniżej przedstawiono dane wyjściowe dotyczące pomyślnego wykonania powyższego polecenia.
Note- Nazwy klas kontrolerów muszą mieć przyrostek „kontroler”. Oznacza to dobrą konwencję nazewnictwa, która jest przestrzegana w Phalcon.
Domyślnie, gdy aplikacja jest tworzona we frameworku Phalcon PHP, zawiera kontroler o nazwie „IndexController”. Ten kontroler jest wywoływany domyślnie w celu wyzwolenia akcji.
Ten kontroler jest rozszerzony o podstawę kontrolera w przeciwieństwie do innych kontrolerów, które się rozszerzają \Phalcon\Mvc\Controller.
Code -
<?php
class IndexController extends ControllerBase {
public function indexAction() {
echo "This is my first web application in Phalcon";
}
}
Output -