Sök…


En mycket enkel Hello World-applikation

Börja från en ny installation av Codeigniter 3, här är ett enkelt sätt att börja med en Hello World-applikation, att bryta isen med detta solida PHP-ramverk.

För att göra detta kan du börja skapa den vy som vi vill visas för vår Hello World-app.

Vi kommer att lägga den i din applikationsmapp, här:

I hello_world.php ( /application/views/ )

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Hello World</title>
</head>
<body>

    <h1>Hello World!</h1>

</body>
</html>

Det är bara ett enkelt HTML-innehåll.

För att visa den här vyn behöver vi en kontroller . Styrenheten är den som kommer att återkalla vyn för att dess innehåll ska visas.

För att det ska fungera ordentligt måste kontrollenheten gå i rätt mapp för styrenheter.

Här ska vi placera vår Hello World-controller:

/application/controllers/Hello_world.php

(Kontrollenhetens namn är vanligtvis snake_case med den första bokstaven med stora bokstäver)

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

class Hello_world extends CI_Controller {

    public function __construct()
    {
    parent::__construct();
    }

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

}

Standardfunktionen för en styrenhet är indexfunktionen.

Nu kommer du att kunna se innehållet på din Hello World-sida åtkomst till följande adress:

http://[your_domain_name]/index.php/hello_world

eller om du använde fixen med hjälp av .htaccess (gå tillbaka till installationssidan för fixningen)

http://[your_domain_name]/hello_world

(Om du arbetar lokalt, är troligtvis adressen där du hittar din sida: http://localhost/hello_world )

Webbadressen är faktiskt bildad och anropar din controller-klass (i detta fall Hello_world , men använder alla små bokstäver i URL-adressen). I det här fallet räcker det eftersom vi använde indexfunktionen. Om vi skulle ha använt ett annat funktionsnamn (låt oss säga greetings ), skulle vi ha använt en URL som denna:

http://[your_domain_name]/hello_world/greetings

Vilket är strukturerat som /[controller_name]/[method_name] .

Här har du! Din första Codeigniter-applikation fungerar!

Låt oss använda kontrollern lite mer

Nu ska vi försöka gå med ett lite mer komplicerat exempel med hjälp av kontrollerns funktioner för att fylla i vyn.

Här är vår åsikt: /application/views/hello_world.php

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Hello World</title>
</head>
<body>

<h1><?php echo $greetings;?></h1>

</body>
</html>

Nu har vi en platshållare för att våra hälsningar ska visas.

Så här byter vi controller för att detta ska fungera:

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

class Hello_world extends CI_Controller {
    
    public function __construct() {
        parent::__construct();
    }

    public function greetings(){
        $data = array('greetings'=>'Hello World');
        $this->load->view('hello_world',$data);
    }
}

Datadarrayen $data förbereds med informationen som ska injiceras i vyn med samma etikett ( greetings ) som har återkallats i vyn.

Det slutliga resultatet är detsamma som med det första exemplet, men vi använder nu mer av ramens potential!

Låt oss välja våra hälsningar: Hello World eller Good Bye World eller ...?

Låt oss säga att vi vill ha en alternativ hälsning som är tillgänglig via en annan URL. Vi kanske skapar en ny funktion eller till och med en ny styrenhet för det, men en bästa praxis är att optimera det vi redan har, för att få det att fungera som det är bäst!

För att göra detta behåller vi samma vy som i de tidigare exemplen, men vi introducerar en parameter i vår funktion för att den ska kunna välja mellan två olika hälsningar:

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

class Hello_world extends CI_Controller {
    
    public function __construct() {
        parent::__construct();
    }

    public function greetings($my_greetings){
        switch($my_greetings)
        {
            case 'goodbye':
                $say = 'Good Bye World';
            break;
            case 'morning':
                $say = 'Good Morning World';
            break;
            default:
                $say = 'Hello World';
        }
        $data = array('greetings'=>$say);
        $this->load->view('hello_world',$data);
    }
}

Nu har vi flera hälsningar! För att de ska kunna visualiseras kommer vi att lägga till parametern på URL: an:

http://[your_domain_name]/hello_world/greetings/goodbye

Detta visar oss meddelandet: "Good Bye World".

Strukturen för webbadressen är som följer:

http://[your_domain_name]/[controller_name]/[function_name]/[parameter_1]

I det här fallet, för att komma tillbaka till vår goda "Hej värld", räcker det att ringa den tidigare url, utan parametrar:

http://localhost/hello_world/greetings

Du kan lägga till flera parametrar till din funktion (till exempel om du behöver 3 av dem):

public function greetings($param1,$param2,$param3)

och de kan fyllas på med hjälp av url enligt följande:

http://[your_domain_name]/[controller_name]/[function_name]/[param1]/[param2]/[param3]

t.ex. http://localhost/hello_world/greetings/goodbye/italian/red

På så sätt kan du få parametrar direkt till dig från URL: en som påverkar innehållet i det som kommer att visas.

Om du vill veta mer om hur du skickar parametrar via webbadressen kanske du vill undersöka ämnet routing!



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow