CodeController e routing delle viste in Igniter: impara con un'app di esempio.

In questo tutorial imparerai i seguenti argomenti.

  • efficiente โ€“ il routing รจ responsabile della risposta alle richieste URL. Il routing associa l'URL ai percorsi predefiniti. Se non viene trovata alcuna corrispondenza di percorso, CodeIgniter genera un'eccezione di pagina non trovata.
  • Controller โ€“ i percorsi sono collegati ai controllori. I controller uniscono insieme i modelli e le viste. La richiesta di dati/logica aziendale dal modello e la restituzione dei risultati nella presentazione della vista. Una volta che un URL รจ stato abbinato a un percorso, viene inoltrato alla funzione pubblica di un controller. Questa funzione interagisce con l'origine dati, la logica aziendale e restituisce la vista che mostra i risultati.
  • Visualizzazioni โ€“ Le visualizzazioni sono responsabili della presentazione. Una vista รจ solitamente una combinazione di HTML, CSS e JavaScript. Questa รจ la parte responsabile della visualizzazione della pagina web all'utente. In genere, i dati visualizzati vengono solitamente recuperati dal database o da qualsiasi altra fonte di dati disponibile.

Come crearne uno nuovo CodeProgetto Igniter

Utilizzeremo Composer per creare un nuovo progetto. Utilizzerรฒ il server PHP integrato, quindi non รจ necessario disporre di software aggiuntivo come Apache. In questo tutorial, utilizziamo il file Windows sistema operativo. Pertanto, abbiamo creato una cartella Sites sull'unitร  C. Puoi utilizzare qualsiasi directory adatta a te.

Aprire la riga di comando/terminale ed eseguire il seguente comando

cd C:\Sites

Ora creeremo un CodeProgetto Igniter tramite Composer. Eseguire il seguente comando

composer create-project CodeIgniter/framework ci-app

QUI,

  • Il comando sopra crea un nuovo CodeProgetto Igniter versione 3 utilizzando l'ultima versione stabile, ovvero la 3.1.9, nella directory ci-app.

Una volta completato il comando sopra, dovresti essere in grado di ottenere risultati simili ai seguenti nel terminale

Crea un nuovo CodeProgetto Igniter

Eseguire il seguente comando per passare alla directory del progetto appena creata ci-app

cd ci-app

Avviamo ora il server web integrato in PHP

 php -S localhost:3000

QUI,

  • Il comando precedente avvia il server PHP integrato in esecuzione sulla porta 3000.

Aprire il browser web e navigare al seguente URL: http://localhost:3000/

Otterrai la seguente pagina

Crea un nuovo CodeProgetto Igniter

Se riesci a vedere la pagina sopra, congratulazioni, hai installato con successo CodeAccenditore.

Come puoi leggere dalla pagina web sopra, la pagina visualizzata sopra รจ resa dalla vista situata in application/views/welcome_message.php e il controller responsabile si trova in application/controllers/Welcome.php

CodePercorso dell'accenditore

Per ora, la nostra applicazione ha un solo URL che รจ la home page. In questa sezione personalizzeremo la sezione home. Creeremo alcuni nuovi URL che risponderanno alle diverse richieste.

Cominciamo con il percorso della home page

Apri il file dei percorsi come indicato dal percorso seguente

application/config/routes.php

Dovresti essere in grado di vedere il seguente contenuto

$route['default_controller'] = 'welcome';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;

QUI,

  • $route['default_controller'] = 'benvenuto'; definisce il controller predefinito che risponde alle richieste URI
  • $route['404_override'] = โ€; questa rotta consente di definire una rotta personalizzata per gli errori 404. Un errore 404 si verifica quando una pagina non viene trovata. CodeIgniter dispone di un gestore di errori predefinito, ma รจ possibile definirne uno personalizzato, se lo si desidera.
  • $route['translate_uri_dashes'] = FALSE; questa opzione consente di tradurre i trattini in underscore. Parleremo di questa opzione quando vedremo come funzionano le rotte in CodeAccenditore.

Diamo ora un'occhiata al metodo del controller responsabile della visualizzazione della home page che abbiamo visto quando abbiamo aperto l'URL http://localhost:3000/ nel browser web.

Aprire il seguente file

application/controllers/Welcome.php

Dovresti essere in grado di vedere il seguente codice

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Welcome extends CI_Controller {

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

QUI,

  • Defined ('BASEPATH') OR exit('No direct script access allowed'); protegge dall'accesso diretto alla classe controller senza passare attraverso il file index.php. Ricorda, nel paradigma MVC tutte le richieste hanno un unico punto di ingresso e per CodeIgniter, il suo index.php. Questo codice blocca tutte le richieste che non provengono da index.php
  • class Welcome extends CI_Controller {โ€ฆ} definisce una classe Welcome che estende la classe genitore CI_Controller
  • la funzione pubblica indice() definisce una funzione pubblica che viene chiamata per impostazione predefinita quando si apre la home page
  • $this->load->view('welcome_message'); questa riga carica la vista Welcome_message. Il file Welcome_message si trova nella directory application/views/welcome_message.php

Finora abbiamo esplorato solo ciรฒ che esce dalla scatola con CodeIgniter, proviamo ora ad apportare alcune modifiche. Creeremo la nostra home page e sostituiremo la pagina predefinita.

Crea un nuovo file in application/views/home.php

Aggiungere il seguente codice a home.php

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Hello CodeIgniter!</title>
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.2/css/bulma.min.css">
        <script defer src="https://use.fontawesome.com/releases/v5.3.1/js/all.js"></script>
    </head>
    <body>
        <section class="section">
            <div class="container">
                <h1 class="title">
                    CodeIgniter Hello World
                </h1>
            </div>
        </section>
    </body>
</html>

QUI,

Il codice HTML sopra carica il framework e il carattere Burma SSS dalla rete CDN per creare un documento HTML molto semplice. Applica una regola CSS molto semplice dal framework CSS birmano.

Apri il seguente URL nel tuo browser: http://localhost:3000/

Dovresti essere in grado di vedere quanto segue

CodePercorso dell'accenditore

Ottimo, abbiamo appena modificato con successo la home page. Andando avanti, definiamo il nostro percorso. Supponiamo che la nostra applicazione debba essere in grado di mostrare anche la pagina Chi siamo.

Crea un percorso

Apri il file dei percorsi application/config.routes.php

Aggiungi il seguente percorso

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

QUI,

  • Quando un visitatore visita l'URL /about-us, stiamo fornendo istruzioni CodeIgniter cerca un controller Welcome ed esegue il metodo about_us.

Crea un controllore

Definiamo ora il metodo del controller su di noi

Apri applicazione/controller/Welcome.php

Aggiungere il seguente metodo

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

QUI,

  • Il codice precedente definisce una funzione about_us e carica una vista about_us.

Crea una vista

Creiamo ora la vista a cui abbiamo appena fatto riferimento nella sezione precedente

Crea un nuovo file about_us.php in application/views/about_us.php

Aggiungere il seguente codice

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>About CodeIgniter!</title>
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.2/css/bulma.min.css">
        <script defer src="https://use.fontawesome.com/releases/v5.3.1/js/all.js"></script>
    </head>
    <body>
        <section class="section">
            <div class="container">
                <h1 class="title">
                    About us yap...                
                </h1>
            </div>
        </section>
    </body>
</html>

Siamo pronti, apri il seguente URL nel tuo browser web: http://localhost:3000/index.php/about-us

Vedrai la seguente pagina

Crea una vista in CodeAccenditore

Se riesci a visualizzare la pagina sopra, congratulazioni, hai creato con successo una semplice applicazione in CodeAccenditore.

Sintesi

In questo tutorial abbiamo trattato tre (3) componenti principali che costituiscono un CodeApplicazione Igniter. Abbiamo esaminato le route e come definirle, i controller e come creare metodi che rispondono alle richieste di route, e abbiamo creato delle semplici viste che vengono restituite agli utenti quando richiedono una risorsa.

Riassumi questo post con: