CodeIgniter-Controller, Views Routing: Lernen Sie mit der Beispiel-App

Inhaltsverzeichnis:

Anonim

In diesem Tutorial lernen Sie die folgenden Themen.

  • Routing - Das Routing ist für die Beantwortung von URL-Anfragen verantwortlich. Das Routing stimmt die URL mit den vordefinierten Routen überein. Wenn keine Routenübereinstimmung gefunden wird, löst CodeIgniter eine Seite aus, für die keine Ausnahme gefunden wurde.
  • Controller - Routen sind mit Controllern verknüpft. Controller kleben die Modelle und Ansichten zusammen. Die Anforderung von Daten / Geschäftslogik aus dem Modell und die Rückgabe der Ergebnisse in der Darstellung der Ansicht. Sobald eine URL mit einer Route abgeglichen wurde, wird sie an die öffentliche Funktion eines Controllers weitergeleitet. Diese Funktion interagiert mit der Datenquelle und der Geschäftslogik und gibt die Ansicht zurück, in der die Ergebnisse angezeigt werden.
  • Ansichten - Ansichten sind für die Präsentation verantwortlich. Eine Ansicht ist normalerweise eine Kombination aus HTML, CSS und JavaScript. Dies ist der Teil, der für die Anzeige der Webseite für den Benutzer verantwortlich ist. In der Regel werden die angezeigten Daten aus der Datenbank oder anderen verfügbaren Datenquellen abgerufen.

In diesem Tutorial lernen Sie:

  • So erstellen Sie ein neues CodeIgniter-Projekt
  • CodeIgniter-Routing
  • Erstellen Sie eine Route
  • Erstellen Sie einen Controller
  • Erstellen Sie eine Ansicht

So erstellen Sie ein neues CodeIgniter-Projekt

Wir werden Composer verwenden, um ein neues Projekt zu erstellen. Ich werde den in PHP integrierten Server verwenden, daher ist keine zusätzliche Software wie Apache erforderlich. In diesem Tutorial verwenden wir das Windows-Betriebssystem. Aus diesem Grund haben wir auf Laufwerk C einen Sites-Ordner erstellt. Sie können jedes für Sie geeignete Verzeichnis verwenden.

Öffnen Sie die Befehlszeile / das Terminal und führen Sie den folgenden Befehl aus

cd C:\Sites

Wir werden jetzt ein CodeIgniter-Projekt mit Composer erstellen. Führen Sie den folgenden Befehl aus

composer create-project CodeIgniter/framework ci-app

HIER,

  • Mit dem obigen Befehl wird ein neues CodeIgniter-Projekt Version 3 mit der neuesten stabilen Version, dh 3.1.9, in einem Verzeichnis ci-app erstellt.

Wenn der obige Befehl ausgeführt wurde, sollten Sie in der Lage sein, im Terminal ähnliche Ergebnisse wie die folgenden zu erzielen

Führen Sie den folgenden Befehl aus, um zum neu erstellten Projektverzeichnis ci-app zu navigieren

cd ci-app

Lassen Sie uns nun den in PHP integrierten Webserver starten

 php -S localhost:3000 

HIER,

  • Mit dem obigen Befehl wird der integrierte PHP-Server gestartet, der auf Port 3000 ausgeführt wird.

Öffnen Sie den Webbrowser und durchsuchen Sie die folgende URL

http: // localhost: 3000 /

Sie erhalten die folgende Seite

Wenn Sie die obige Seite sehen können, dann herzlichen Glückwunsch, Sie haben CodeIgniter erfolgreich installiert.

Wie Sie auf der obigen Webseite lesen können, wird die oben angezeigte Seite von der Ansicht in application / views / welcome_message.php gerendert, und der verantwortliche Controller befindet sich in application / controller / Welcome.php

CodeIgniter-Routing

Derzeit hat unsere Anwendung nur eine einzige URL, die die Startseite darstellt. In diesem Abschnitt werden wir den Home-Bereich anpassen. Wir werden einige neue URLs erstellen, die auf die verschiedenen Anfragen reagieren.

Beginnen wir mit der Route der Startseite

Öffnen Sie die Routendatei wie im folgenden Pfad angegeben

application/config/routes.php
Sie sollten in der Lage sein, den folgenden Inhalt zu sehen
$route['default_controller'] = 'welcome';$route['404_override'] = '';$route['translate_uri_dashes'] = FALSE;

HIER,

  • $ route ['default_controller'] = 'welcome'; Definiert den Standard-Controller, der auf die URI-Anforderungen reagiert
  • $ route ['404_override'] = ''; Mit dieser Route können Sie eine benutzerdefinierte Route für 404-Fehler definieren. Ein 404-Fehler tritt auf, wenn eine Seite nicht gefunden wird. CodeIgniter hat einen Standardhandler für den Fehler, aber Sie können Ihren eigenen definieren, wenn Sie dies wünschen.
  • $ route ['translate_uri_dashes'] = FALSE; Mit dieser Option können Sie Bindestriche in Unterstriche übersetzen. Wir werden über diese Option sprechen, wenn wir uns ansehen, wie Routen in CodeIgniter funktionieren.

Schauen wir uns nun die Controller-Methode an, die für die Anzeige der Homepage verantwortlich ist, die wir beim Öffnen der URL http: // localhost: 3000 / im Webbrowser gesehen haben

Öffnen Sie die folgende Datei

application/controllers/Welcome.php

Sie sollten den folgenden Code sehen können

load->view('welcome_message');}}

HIER,

  • Definiert ('BASEPATH') ODER beenden ('Kein direkter Skriptzugriff erlaubt'); schützt vor direktem Zugriff auf die Controller-Klasse, ohne die Datei index.php zu durchlaufen. Denken Sie daran, dass im MVC-Paradigma alle Anforderungen einen einzigen Einstiegspunkt haben und für CodeIgniter die Datei index.php. Dieser Code blockiert alle Anforderungen, die nicht über index.php eingehen
  • Klasse Welcome erweitert CI_Controller {…} definiert eine Klasse Welcome, die die übergeordnete Klasse CI_Controller erweitert
  • public function index () definiert eine öffentliche Funktion, die beim Öffnen der Homepage standardmäßig aufgerufen wird
  • $ this-> load-> view ('welcome_message'); Diese Zeile lädt die Ansicht welcome_message. Die Datei welcome_message befindet sich im Verzeichnis application / views / welcome_message.php

Bisher haben wir nur untersucht, was mit CodeIgniter aus der Verpackung kommt. Lassen Sie uns nun versuchen, einige Änderungen vorzunehmen. Wir werden unsere Homepage erstellen und die Standardseite ersetzen

Erstellen Sie eine neue Datei in application / views / home.php

Fügen Sie home.php den folgenden Code hinzu

Hello CodeIgniter!

CodeIgniter Hello World

HIER,

Der obige HTML-Code lädt das Burma SSS-Framework und die Schriftart aus dem CDN-Netzwerk und erstellt ein sehr einfaches HTML-Dokument. Es wendet eine sehr einfache CSS-Regel aus dem Burma CSS-Framework an.

Öffnen Sie die folgende URL in Ihrem Browser

http: // localhost: 3000 /

Sie sollten in der Lage sein, Folgendes zu sehen

Großartig, wir haben gerade die Homepage erfolgreich geändert. Lassen Sie uns fortfahren und unsere Route definieren. Nehmen wir an, unsere Anwendung muss auch die Seite über uns anzeigen können.

Erstellen Sie eine Route

Öffnen Sie die Routendatei application / config.routes.php

Fügen Sie die folgende Route hinzu

$route['about-us'] = 'welcome/about_us';

HIER,

  • Wenn ein Besucher die URL / about-us besucht, weisen wir CodeIgniter an, nach einem Controller Welcome zu suchen und die Methode about_us auszuführen.

Erstellen Sie einen Controller

Definieren wir nun die Controller-Methode über uns

Öffnen Sie application / controller / Welcome.php

Fügen Sie die folgende Methode hinzu

public function about_us(){$this->load->view('about_us');}

HIER,

  • Der obige Code definiert eine Funktion about_us und lädt eine Ansicht about_us.

Erstellen Sie eine Ansicht

Lassen Sie uns nun die Ansicht erstellen, auf die wir gerade im obigen Abschnitt verwiesen haben

Erstellen Sie eine neue Datei about_us.php in application / views / about_us.php

Fügen Sie den folgenden Code hinzu

About CodeIgniter!

About us yap…

Öffnen Sie die folgende URL in Ihrem Webbrowser

http: // localhost: 3000 / index.php / about-us

Sie sehen die folgende Seite

Wenn Sie die obige Seite sehen können, dann herzlichen Glückwunsch, Sie haben erfolgreich eine einfache Anwendung in CodeIgniter erstellt.

Zusammenfassung

In diesem Tutorial haben wir drei (3) Hauptkomponenten behandelt, aus denen eine CodeIgniter-Anwendung besteht. Wir haben uns Routen angesehen und wie man sie definiert, Controller und wie man Methoden erstellt, die auf Routenanforderungen reagieren, und einfache Ansichten erstellt, die an die Benutzer zurückgegeben werden, wenn sie eine Ressource anfordern.