In deze tutorial leer je de volgende onderwerpen.
- Routing - routing is verantwoordelijk voor het reageren op URL-verzoeken. Routing koppelt de URL aan de vooraf gedefinieerde routes. Als er geen route-overeenkomst wordt gevonden, gooit CodeIgniter een pagina die geen uitzondering heeft gevonden.
- Controllers - routes zijn gekoppeld aan controllers. Controllers lijmen de modellen en weergaven aan elkaar. Het opvragen van data / bedrijfslogica uit het model en de resultaten retourneren in de presentatie van de weergave. Zodra een URL is gekoppeld aan een route, wordt deze doorgestuurd naar de openbare functie van een controller. Deze functie werkt samen met de gegevensbron, bedrijfslogica en retourneert de weergave waarin de resultaten worden weergegeven.
- Weergaven - weergaven zijn verantwoordelijk voor de presentatie. Een weergave is meestal een combinatie van HTML, CSS en JavaScript. Dit is het onderdeel dat verantwoordelijk is voor het weergeven van de webpagina aan de gebruiker. De weergegeven gegevens worden doorgaans opgehaald uit de database of andere beschikbare gegevensbronnen.
In deze tutorial leer je-
- Hoe u een nieuw CodeIgniter-project maakt
- CodeIgniter-routering
- Maak een route
- Maak een controller
- Maak een weergave
Hoe u een nieuw CodeIgniter-project maakt
We zullen Composer gebruiken om een nieuw project te maken. Ik zal de ingebouwde PHP-server gebruiken, dus het is niet nodig om extra software zoals Apache te hebben. In deze tutorial gebruiken we het Windows-besturingssysteem. Daarom hebben we een Sites-map op station C gemaakt. U kunt elke map gebruiken die voor u geschikt is.
Open de opdrachtregel / terminal en voer de volgende opdracht uit
cd C:\Sites
We gaan nu een CodeIgniter-project maken met Composer. Voer de volgende opdracht uit
composer create-project CodeIgniter/framework ci-app
HIER,
- Het bovenstaande commando maakt een nieuw CodeIgniter-projectversie 3 aan met behulp van de laatste stabiele release, dwz 3.1.9 in een directory ci-app.
Wanneer de bovenstaande opdracht is voltooid, zou u in de terminal resultaten moeten kunnen krijgen die vergelijkbaar zijn met de volgende
Voer de volgende opdracht uit om naar de nieuw gemaakte projectdirectory ci-app te bladeren
cd ci-app
Laten we nu de in PHP ingebouwde webserver starten
php -S localhost:3000
HIER,
- De bovenstaande opdracht start de ingebouwde PHP-server die op poort 3000 draait.
Open de webbrowser en blader door de volgende URL
http: // localhost: 3000 /
U krijgt de volgende pagina
Als je de bovenstaande pagina kunt zien, gefeliciteerd, je hebt CodeIgniter met succes geïnstalleerd.
Zoals je kunt lezen op de bovenstaande webpagina, wordt de hierboven weergegeven pagina weergegeven door de weergave in application / views / welcome_message.php en de verantwoordelijke controller bevindt zich in application / controllers / Welcome.php
CodeIgniter-routering
Voorlopig heeft onze applicatie slechts een enkele URL die de startpagina is. In dit gedeelte zullen we het homegedeelte aanpassen. We zullen een aantal nieuwe URL's maken die op de verschillende verzoeken zullen reageren.
Laten we beginnen met de startpaginaroute
Open het routesbestand zoals aangegeven door het onderstaande pad
application/config/routes.phpU zou de volgende inhoud moeten kunnen zien
$route['default_controller'] = 'welcome';$route['404_override'] = '';$route['translate_uri_dashes'] = FALSE;
HIER,
- $ route ['default_controller'] = 'welkom'; definieert de standaardcontroller die reageert op de URI-verzoeken
- $ route ['404_override'] = ''; Met deze route kunt u een aangepaste route definiëren voor 404-fouten. Er treedt een 404-fout op wanneer een pagina niet wordt gevonden. CodeIgniter heeft een standaardhandler voor de fout, maar u kunt uw eigen handler definiëren als u dat wilt.
- $ route ['translate_uri_dashes'] = ONWAAR; Met deze optie kunt u streepjes naar onderstrepingstekens vertalen. We zullen over deze optie praten als we kijken hoe routes werken in CodeIgniter.
Laten we nu kijken naar de controllermethode die verantwoordelijk is voor het weergeven van de startpagina die we zagen toen we de URL http: // localhost: 3000 / in de webbrowser openden
Open het volgende bestand
application/controllers/Welcome.php
U zou de volgende code moeten kunnen zien
load->view('welcome_message');}}
HIER,
- Gedefinieerd ('BASEPATH') OF exit ('Geen directe scripttoegang toegestaan'); beschermt tegen directe toegang tot de controller-klasse zonder het index.php-bestand te passeren. Onthoud dat in het MVC-paradigma alle verzoeken één ingangspunt hebben en voor CodeIgniter de index.php. Deze code blokkeert alle verzoeken die niet via index.php binnenkomen
- class Welcome extends CI_Controller {…} definieert een class Welcome die de bovenliggende class CI_Controller uitbreidt
- public function index () definieert een publieke functie die standaard wordt aangeroepen wanneer je de homepagina opent
- $ this-> load-> view ('welcome_message'); deze regel laadt de weergave welcome_message. Het bestand welcome_message bevindt zich in de directory application / views / welcome_message.php
Tot nu toe hebben we alleen onderzocht wat er uit de doos komt met CodeIgniter, laten we nu proberen enkele wijzigingen aan te brengen. We zullen onze startpagina maken en de standaardpagina vervangen
Maak een nieuw bestand aan in application / views / home.php
Voeg de volgende code toe aan home.php
Hello CodeIgniter! CodeIgniter Hello World
HIER,
De bovenstaande HTML-code laadt het Burma SSS-framework en het lettertype van het CDN-netwerk om een zeer eenvoudig HTML-document te maken. Het past een zeer eenvoudige CSS-regel toe vanuit het Burma CSS-framework.
Open de volgende URL in uw browser
http: // localhost: 3000 /
U zou het volgende moeten kunnen zien
Geweldig, we hebben zojuist de startpagina met succes aangepast. Laten we verder gaan, laten we onze route bepalen. Laten we aannemen dat onze applicatie ook de over ons-pagina moet kunnen tonen.
Maak een route
Open het routesbestand application / config.routes.php
Voeg de volgende route toe
$route['about-us'] = 'welcome/about_us';
HIER,
- Wanneer een bezoeker de URL / about-us bezoekt, geven we CodeIgniter de opdracht om naar een controller Welcome te zoeken en de methode about_us uit te voeren.
Maak een controller
Laten we nu de controllermethode over ons definiëren
Open applicatie / controllers / Welcome.php
Voeg de volgende methode toe
public function about_us(){$this->load->view('about_us');}
HIER,
- De bovenstaande code definieert een functie about_us en laadt een view about_us.
Maak een weergave
Laten we nu de weergave maken waarnaar we zojuist in de bovenstaande sectie hebben verwezen
Maak een nieuw bestand about_us.php in application / views / about_us.php
Voeg de volgende code toe
About CodeIgniter! About us yap…
We zijn klaar om te gaan, open de volgende URL in uw webbrowser
http: // localhost: 3000 / index.php / over-ons
U ziet de volgende pagina
Als je de bovenstaande pagina kunt zien, gefeliciteerd, je hebt met succes een eenvoudige applicatie gemaakt in CodeIgniter.
Overzicht
In deze zelfstudie hebben we drie (3) hoofdcomponenten besproken waaruit een CodeIgniter-toepassing bestaat. We hebben gekeken naar routes en hoe ze te definiëren, controllers en hoe we methoden kunnen creëren die reageren op routeaanvragen en we hebben eenvoudige weergaven gemaakt die worden teruggestuurd naar de gebruikers wanneer ze om een bron vragen.