CodeIgniter Controllers, Views Routing: Lär dig med exempelapp

Innehållsförteckning:

Anonim

I denna handledning kommer du att lära dig följande ämnen.

  • Routing - routing ansvarar för att svara på URL-förfrågningar. Routing matchar webbadressen till de fördefinierade rutterna. Om ingen ruttmatchning hittas, slår CodeIgniter en sida som inte hittades ett undantag.
  • Styrenheter - rutter är länkade till styrenheter. Styrenheter limma modeller och vyer ihop. Begäran om data / affärslogik från modellen och returnera resultaten i presentationen av vyn. När en URL har matchats till en rutt vidarebefordras den till en registeransvariges offentliga funktion. Den här funktionen interagerar med datakällan, affärslogiken och returnerar den vy som visar resultaten.
  • Visningar - åsikter är ansvariga för presentation. En vy är vanligtvis en kombination av HTML, CSS och JavaScript. Detta är den del som är ansvarig för att visa webbsidan för användaren. Vanligtvis hämtas de visade uppgifterna vanligtvis från databasen eller andra tillgängliga datakällor.

I den här handledningen lär du dig-

  • Hur man skapar ett nytt CodeIgniter-projekt
  • CodeIgniter Routing
  • Skapa en rutt
  • Skapa en kontroller
  • Skapa en vy

Hur man skapar ett nytt CodeIgniter-projekt

Vi kommer att använda Composer för att skapa ett nytt projekt. Jag kommer att använda den inbyggda PHP-servern, så det är inte nödvändigt att ha extra programvara som Apache. I denna handledning använder vi Windows-operativsystemet. Därför har vi skapat en webbplatsmapp på enhet C. Du kan använda vilken katalog som helst som passar dig.

Öppna kommandoraden / terminalen och kör följande kommando

cd C:\Sites

Vi kommer nu att skapa ett CodeIgniter-projekt med hjälp av Composer. Kör följande kommando

composer create-project CodeIgniter/framework ci-app

HÄR,

  • Ovanstående kommando skapar en ny CodeIgniter-projektversion 3 med den senaste stabila versionen, dvs. 3.1.9 i en katalog-ci-app.

När ovanstående kommando har slutförts ska du kunna få resultat som liknar följande i terminalen

Kör följande kommando för att bläddra till den nyligen skapade ci-appen för projektkatalogen

cd ci-app

Låt oss nu starta den inbyggda PHP-webbservern

 php -S localhost:3000 

HÄR,

  • Ovanstående kommando startar den inbyggda PHP-servern som körs på port 3000.

Öppna webbläsaren och bläddra bland följande URL

http: // localhost: 3000 /

Du får följande sida

Om du kan se ovanstående sida så gratulerar du att du har installerat CodeIgniter.

Som du kan läsa från ovanstående webbsida återges sidan som visas ovan av vyn i applikationen / vyer / välkomst_meddelande.php och den ansvariga styrenheten finns i applikationen / styrenheter / Välkommen.php

CodeIgniter Routing

För närvarande har vår ansökan bara en enda webbadress som är hemsidan. I det här avsnittet kommer vi att anpassa hemavsnittet. Vi skapar några nya webbadresser som svarar på de olika förfrågningarna.

Låt oss börja med hemsidans rutt

Öppna ruttfilen som anges av sökvägen nedan

application/config/routes.php
Du borde kunna se följande innehåll
$route['default_controller'] = 'welcome';$route['404_override'] = '';$route['translate_uri_dashes'] = FALSE;

HÄR,

  • $ route ['default_controller'] = 'välkommen'; definierar standardkontrollen som svarar på URI-förfrågningar
  • $ route ['404_override'] = ''; den här rutten låter dig definiera en anpassad rutt för 404-fel. Ett 404-fel uppstår när en sida inte hittas. CodeIgniter har en standardhanterare för felet men du kan definiera din egen om du så önskar.
  • $ route ['translate_uri_dashes'] = FALSKT; det här alternativet låter dig översätta streck till understrykningar. Vi kommer att prata om det här alternativet när vi tittar på hur rutter fungerar i CodeIgniter.

Låt oss nu titta på styrenhetsmetoden som är ansvarig för att visa hemsidan som vi såg när vi öppnade URL: n http: // localhost: 3000 / i webbläsaren

Öppna följande fil

application/controllers/Welcome.php

Du borde kunna se följande kod

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

HÄR,

  • Definierad ('BASEPATH') ELLER avsluta ('Ingen direkt skriptåtkomst tillåten'); skyddar mot direkt åtkomst till kontrollerklassen utan att gå igenom index.php-filen. Kom ihåg att i MVC-paradigm har alla förfrågningar en enda ingångspunkt och för CodeIgniter dess index.php. Den här koden blockerar alla förfrågningar som inte kommer via index.php
  • klass Välkommen utökar CI_Controller {...} definierar en klass Välkommen som utökar överordnad klass CI_Controller
  • public function index () definierar en offentlig funktion som anropas som standard när du öppnar hemsidan
  • $ this-> load-> view ('welcome_message'); den här raden laddar vyn välkomstmeddelande. Filen welcome_message finns i katalogapplikationen / views / welcome_message.php

Hittills har vi bara utforskat vad som kommer ur lådan med CodeIgniter, låt oss nu försöka göra några ändringar. Vi kommer att skapa vår hemsida och ersätta standardsidan

Skapa en ny fil i application / views / home.php

Lägg till följande kod till home.php

Hello CodeIgniter!

CodeIgniter Hello World

HÄR,

Ovanstående HTML-kod laddar Burma SSS-ramverk och typsnitt från CDN-nätverk skapar ett mycket enkelt HTML-dokument. Det tillämpar mycket enkel CSS-regel från Burma CSS-ramverk.

Öppna följande URL i din webbläsare

http: // localhost: 3000 /

Du borde kunna se följande

Bra, vi har precis ändrat startsidan. Låt oss definiera vår rutt. Låt oss anta att vår ansökan också måste kunna visa sidan om oss.

Skapa en rutt

Öppna ruttfilapplikationen / config.routes.php

Lägg till följande rutt

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

HÄR,

  • När en besökare besöker webbadressen / om oss, instruerar vi CodeIgniter att leta efter en kontroller Välkommen och köra metoden about_us.

Skapa en kontroller

Låt oss nu definiera styrenhetsmetoden om oss

Öppna applikation / styrenheter / Welcome.php

Lägg till följande metod

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

HÄR,

  • Ovanstående kod definierar en funktion about_us och laddar en vy about_us.

Skapa en vy

Låt oss nu skapa den vy som vi just refererade till i avsnittet ovan

Skapa en ny fil about_us.php i application / views / about_us.php

Lägg till följande kod

About CodeIgniter!

About us yap…

Vi är klara att öppna, öppna följande URL i din webbläsare

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

Du kommer att se följande sida

Om du kan se ovanstående sida så gratulerar, du har framgångsrikt skapat en enkel applikation i CodeIgniter.

Sammanfattning

I denna handledning täckte vi tre (3) huvudkomponenter som utgör en CodeIgniter-applikation. Vi tittade på rutter och hur man definierar dem, styrenheter och hur man skapar metoder som svarar på ruttförfrågningar och skapade enkla vyer som returneras till användarna när de begär en resurs.