Szukaj…


Bardzo prosta aplikacja Hello World

Począwszy od nowej instalacji Codeigniter 3, tutaj jest prosty sposób na rozpoczęcie pracy z aplikacją Hello World, aby przełamać lody dzięki tej solidnej ramie PHP.

Aby to zrobić, możesz rozpocząć tworzenie widoku, który chcemy wyświetlać dla naszej aplikacji Hello World.

Zamierzamy umieścić go w folderze aplikacji, tutaj:

W 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>

To tylko prosta treść HTML.

Teraz, aby wyświetlić ten widok, potrzebujemy kontrolera . Kontroler jest tym, który przywoła widok w celu wyświetlenia jego zawartości.

Aby działał poprawnie, kontroler musi przejść do odpowiedniego folderu kontrolerów.

Oto miejsce, w którym umieścimy nasz kontroler Hello World:

/application/controllers/Hello_world.php

(Nazwa kontrolera to na ogół snake_case z pierwszą literą wielką)

<?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');
    }

}

Domyślną funkcją kontrolera jest funkcja indeksu.

Teraz możesz zobaczyć zawartość swojej strony Hello World, uzyskując dostęp do następującego adresu:

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

lub, jeśli zastosowałeś poprawkę za pomocą .htaccess (wróć do strony instalacyjnej dla poprawki)

http://[your_domain_name]/hello_world

(Jeśli pracujesz lokalnie, najprawdopodobniej adres, na którym znajdziesz swoją stronę, to: http://localhost/hello_world )

Adres URL jest faktycznie tworzony przez wywołanie klasy kontrolera (w tym przypadku Hello_world , ale przy użyciu wszystkich małych liter w adresie URL). W tym przypadku wystarczy, ponieważ użyliśmy funkcji indeksu. Gdybyśmy użyli innej nazwy funkcji (powiedzmy greetings ), powinniśmy użyć takiego adresu URL:

http://[your_domain_name]/hello_world/greetings

Który ma strukturę: /[controller_name]/[method_name] .

Proszę bardzo! Twoja pierwsza aplikacja Codeigniter działa!

Użyjmy trochę więcej kontrolera

Teraz spróbujemy przejść do nieco bardziej złożonego przykładu, wykorzystując możliwości kontrolera do wypełnienia widoku.

Oto nasz widok: /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>

Teraz mamy symbol zastępczy, aby wyświetlić nasze pozdrowienia.

Oto jak zmieniamy kontroler, aby to działało:

<?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);
    }
}

Tablica $data jest przygotowywana z informacjami, które mają zostać wstrzyknięte do widoku, przy użyciu tej samej etykiety ( greetings ), która została przywołana w widoku.

Ostateczny wynik jest taki sam, jak w pierwszym przykładzie, ale teraz wykorzystujemy więcej możliwości frameworka!

Wybierzmy nasze pozdrowienia: Hello World, Good Bye World czy ...?

Powiedzmy, że chcemy mieć alternatywne powitanie, które jest dostępne pod innym adresem URL. Możemy stworzyć do tego nową funkcję, a nawet nowy kontroler, ale najlepszą praktyką jest optymalizacja tego, co już mamy, aby działało jak najlepiej!

Aby to zrobić, zachowamy ten sam widok, co w poprzednich przykładach, ale wprowadzimy parametr do naszej funkcji, aby mogła ona wybierać między dwoma różnymi pozdrowieniami:

<?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);
    }
}

Teraz mamy wiele opcji powitania! Aby można je było wizualizować, dodamy parametr pod adresem URL w następujący sposób:

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

To pokaże nam komunikat: „Good Bye World”.

Struktura adresu URL jest następująca:

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

W takim przypadku, aby wrócić do naszego starego dobrego „Hello World”, wystarczy zadzwonić na poprzedni adres URL, bez parametrów:

http://localhost/hello_world/greetings

Możesz dodać wiele parametrów do swojej funkcji (na przykład, jeśli potrzebujesz 3 z nich):

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

i można je wypełnić przy użyciu adresu URL w następujący sposób:

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

np. http://localhost/hello_world/greetings/goodbye/italian/red

W ten sposób możesz przekazać parametry bezpośrednio z adresu URL, które wpłyną na treść tego, co zostanie wyświetlone.

Aby dowiedzieć się więcej na temat przekazywania parametrów przez adres URL, możesz zajrzeć do tematu routingu!



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow