CodeIgniter Controllers, Views Routing: Lær med eksempelapp

Innholdsfortegnelse:

Anonim

I denne opplæringen skal du lære følgende emner.

  • Rute - ruting er ansvarlig for å svare på URL-forespørsler. Ruting samsvarer med URL-en til de forhåndsdefinerte rutene. Hvis det ikke blir funnet noen rutematch, kaster CodeIgniter en side som ikke fant noe unntak.
  • Kontrollere - ruter er knyttet til kontrollere. Kontrollere limer modellene og visningene sammen. Forespørselen om data / forretningslogikk fra modellen og returnere resultatene i presentasjonen av visningen. Når en URL er blitt matchet med en rute, blir den videresendt til en kontrollers offentlige funksjon. Denne funksjonen samhandler med datakilden, forretningslogikken og returnerer visningen som viser resultatene.
  • Visninger - visninger er ansvarlige for presentasjonen. En visning er vanligvis en kombinasjon av HTML, CSS og JavaScript. Dette er den delen som er ansvarlig for å vise websiden til brukeren. Dataene som vises, blir vanligvis hentet fra databasen eller andre tilgjengelige datakilder.

I denne veiledningen vil du lære-

  • Hvordan lage et nytt CodeIgniter-prosjekt
  • CodeIgniter Routing
  • Lag en rute
  • Lag en kontroller
  • Lag en visning

Hvordan lage et nytt CodeIgniter-prosjekt

Vi vil bruke Composer til å lage et nytt prosjekt. Jeg skal bruke den innebygde PHP-serveren, så det er ikke nødvendig å ha ekstra programvare som Apache. I denne opplæringen bruker vi Windows-operativsystemet. Derfor har vi opprettet en Sites-mappe på stasjon C. Du kan bruke hvilken som helst katalog som passer for deg.

Åpne kommandolinjen / terminalen og kjør følgende kommando

cd C:\Sites

Vi vil nå lage et CodeIgniter-prosjekt ved hjelp av Composer. Kjør følgende kommando

composer create-project CodeIgniter/framework ci-app

HER,

  • Ovennevnte kommando oppretter en ny CodeIgniter-prosjektversjon 3 ved hjelp av den siste stabile utgivelsen, dvs. 3.1.9 i en katalog-ci-app.

Når kommandoen ovenfor er fullført, bør du kunne ha resultater som ligner på følgende i terminalen

Kjør følgende kommando for å bla til den nyopprettede ci-appen for prosjektkatalogen

cd ci-app

La oss nå starte den innebygde PHP-webserveren

 php -S localhost:3000 

HER,

  • Ovennevnte kommando starter den innebygde PHP-serveren som kjører på port 3000.

Åpne nettleseren og bla gjennom følgende URL

http: // localhost: 3000 /

Du får følgende side

Hvis du kan se siden ovenfor, så gratulerer, du har installert CodeIgniter.

Som du kan lese fra ovennevnte webside, blir siden som vises ovenfor gjengitt av visningen i applikasjonen / views / welcome_message.php, og den ansvarlige kontrolleren er plassert i applikasjonen / controllers / Welcome.php

CodeIgniter Routing

Foreløpig har applikasjonen vår bare en enkelt URL som er hjemmesiden. I denne delen vil vi tilpasse hjemmeseksjonen. Vi vil lage noen nye nettadresser som vil svare på de forskjellige forespørslene.

La oss starte med hjemmesiden rute

Åpne rutefilen som angitt av banen nedenfor

application/config/routes.php
Du bør kunne se følgende innhold
$route['default_controller'] = 'welcome';$route['404_override'] = '';$route['translate_uri_dashes'] = FALSE;

HER,

  • $ route ['default_controller'] = 'velkommen'; definerer standardkontrolleren som svarer på URI-forespørslene
  • $ route ['404_override'] = ''; denne ruten lar deg definere en tilpasset rute for 404 feil. En 404-feil oppstår når en side ikke blir funnet. CodeIgniter har en standardbehandler for feilen, men du kan definere din egen hvis du ønsker det.
  • $ route ['translate_uri_dashes'] = FALSE; dette alternativet lar deg oversette bindestrek til understreking. Vi vil snakke om dette alternativet når vi ser på hvordan ruter fungerer i CodeIgniter.

La oss nå se på kontrolleringsmetoden som er ansvarlig for å vise hjemmesiden som vi så da vi åpnet URL-en http: // localhost: 3000 / i nettleseren.

Åpne følgende fil

application/controllers/Welcome.php

Du bør kunne se følgende kode

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

HER,

  • Defined ('BASEPATH') ELLER exit ('Ingen direkte skripttilgang tillatt'); beskytter mot direkte tilgang til kontrollerklassen uten å gå gjennom index.php-filen. Husk at i MVC-paradigme har alle forespørsler ett enkelt inngangspunkt, og for CodeIgniter er index.php. Denne koden blokkerer alle forespørsler som ikke kommer gjennom index.php
  • klasse Velkomst utvider CI_Controller {...} definerer en klasse Velkomst som utvider overordnet klasse CI_Controller
  • public function index () definerer en offentlig funksjon som kalles som standard når du åpner hjemmesiden
  • $ this-> load-> view ('welcome_message'); denne linjen laster visningen velkommen_melding. Filen welcome_message ligger i katalogapplikasjonen / views / welcome_message.php

Så langt har vi bare utforsket hva som kommer ut av boksen med CodeIgniter, la oss nå prøve å gjøre noen endringer. Vi oppretter hjemmesiden vår og erstatter standardsiden

Opprett en ny fil i applikasjonen / views / home.php

Legg til følgende kode til home.php

Hello CodeIgniter!

CodeIgniter Hello World

HER,

Ovennevnte HTML-kode laster Burma SSS-rammeverk og skrift fra CDN-nettverk, og skaper et veldig grunnleggende HTML-dokument. Det gjelder veldig enkel CSS-regel fra Burma CSS-rammeverk.

Åpne følgende URL i nettleseren din

http: // localhost: 3000 /

Du bør kunne se følgende

Flott, vi har nettopp endret hjemmesiden. La oss definere ruten vår. La oss anta at søknaden vår også må kunne vise siden om oss.

Lag en rute

Åpne rutefilprogrammet / config.routes.php

Legg til følgende rute

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

HER,

  • Når en besøkende besøker nettadressen / om oss, instruerer vi CodeIgniter om å lete etter en kontroller Velkommen og utføre metoden about_us.

Lag en kontroller

La oss nå definere kontrollermetoden om oss

Åpne applikasjon / kontrollere / Welcome.php

Legg til følgende metode

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

HER,

  • Ovennevnte kode definerer en funksjon about_us og laster en view about_us.

Lag en visning

La oss nå lage visningen vi nettopp refererte til i avsnittet ovenfor

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

Legg til følgende kode

About CodeIgniter!

About us yap…

Vi er gode å gå, åpne følgende URL i nettleseren din

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

Du vil se neste side

Hvis du kan se ovennevnte side, så gratulerer, du har opprettet et enkelt program i CodeIgniter.

Sammendrag

I denne opplæringen dekket vi tre (3) hovedkomponenter som utgjør et CodeIgniter-program. Vi så på ruter og hvordan vi kunne definere dem, kontrollere og hvordan vi oppretter metoder som svarer på ruteforespørsler og opprettet enkle visninger som returneres til brukerne når de ber om en ressurs.