Heim  >  Artikel  >  Backend-Entwicklung  >  Wie verwende ich das CI7-Framework in PHP?

Wie verwende ich das CI7-Framework in PHP?

WBOY
WBOYOriginal
2023-05-31 21:40:34891Durchsuche

PHP ist eine weit verbreitete Web-Programmiersprache mit einem reichen Ökosystem und einer Community. Unter vielen PHP-Frameworks ist CodeIgniter ein leichtes Framework, das bei Entwicklern beliebt ist. In diesem Artikel wird erläutert, wie Sie das Framework CodeIgniter 3.1.11 (kurz CI7) für die Entwicklung verwenden.

I Nach der Dekomprimierung sehen Sie die folgende Verzeichnisstruktur:

application
system
user_guide
composer.json
composer.lock
index.php
license.txt
README.md

Darunter:
  • Anwendungsverzeichnis ist das Hauptverzeichnis, das Entwickler entwickeln können
  • Systemverzeichnis ist der Kerncode des CI7-Frameworks

user_guide-Verzeichnis ist das Benutzerhandbuch des CI7-Frameworks

    Composer.json ist die Abhängigkeitsverwaltungsdatei des CI7-Frameworks.
  1. index.php ist die Eintragsdatei des CI7-Frameworks und Bibliotheken, die mit Composer installiert werden müssen. Wenn Composer nicht auf Ihrem System installiert ist, können Sie es von der offiziellen Website herunterladen und installieren.

Führen Sie im Stammverzeichnis von CI7 den folgenden Befehl aus, um die Abhängigkeiten zu installieren:

composer install

Während des Ausführungsvorgangs werden Sie möglicherweise aufgefordert, dass das Skript einige vorhandene Dateien überschreibt, und Sie müssen dies bestätigen.

  • Konfigurieren von CI7
  • Die CI7-Framework-Konfigurationsdatei befindet sich unter application/config/config.php und muss wie folgt konfiguriert werden:
  • $config['base_url'] = 'http://localhost/CI7/';
    $config['index_page'] = '';
    
    $config['encryption_key'] = 'fK8rHMq7sj8r8uCKzBQ7';
    
    $config['uri_protocol'] = 'AUTO';
    
    $config['enable_query_strings'] = FALSE;
    
    $config['allow_get_array'] = TRUE;
    $config['enable_query_strings'] = FALSE;
    $config['controller_trigger'] = 'c';
    $config['function_trigger'] = 'm';
    $config['directory_trigger'] = 'd';
    $config['log_threshold'] = 1;
  • Darunter base_url steht für die Root-URL des Projektzugriffs, encryption_key ist der Sicherheitsschlüssel, der zum Verschlüsseln und Entschlüsseln sensibler Informationen wie Cookies und Sitzungen verwendet wird. uri_protocol ist die Methode zum Abrufen der URI-Zeichenfolge mit optionalen Werten wie AUTO, PATH_INFO, QUERY_STRING, REQUEST_URI usw.
    1. Testen Sie, ob die Installation erfolgreich ist
    Besuchen Sie http://localhost/CI7 im Browser. Wenn Sie die Willkommensoberfläche des CI7-Frameworks sehen können, es bedeutet, dass es erfolgreich installiert ist.
    1. III. CI7-Entwicklung

    Controller

    Controller ist ein Objekt im CI7-Framework, das dem URL-Routing entspricht und Anfragen verarbeitet. Es befindet sich im Verzeichnis application/controllers. Eine grundlegende Controller-Klasse ist wie folgt definiert:

    class My_controller extends CI_Controller {
      public function index() {
        // 显示欢迎界面
      }
    
      public function hello() {
        // 显示"Hello, world!"界面
      }
    }

    Unter anderem können Sie durch die Erbung der CI_Controller-Klasse die integrierten Methoden erhalten, die vom CI7-Framework bereitgestellt werden. Der Name des Controllers ist im Allgemeinen derselbe wie der Dateiname. Beim Zugriff wird der Controllername mit der URI-Zeichenfolge abgeglichen, um die Ausführungsmethode zu bestimmen.
    1. View

    application/config/config.php ,需要进行如下配置:

    class My_controller extends CI_Controller {
      public function index() {
        $data['title'] = "欢迎来到我的网站";
    
        $this->load->view('welcome_message', $data);
      }
    }

    其中, base_url 为项目访问的根URL, encryption_key 为安全密钥,用于加密和解密Cookie、Session等敏感信息。 uri_protocol 为URI字符串的获取方式,有AUTO、PATH_INFO、QUERY_STRING、REQUEST_URI等值可选。

    1. 测试是否安装成功

    在浏览器中访问 http://localhost/CI7 ,如能够看到CI7框架的欢迎界面,则说明安装成功。

    III. CI7开发

    1. 控制器

    控制器是CI7框架中与URL路由对应并处理请求的对象,位于 application/controllers 目录下。一个基本的控制器类定义如下:

    <html>
    <head>
      <title><?= $title ?></title>
    </head>
    <body>
      <h1><?= $title ?></h1>
      <p>欢迎访问我的网站!</p>
    </body>
    </html>

    其中,通过继承 CI_Controller 类,可以获得CI7框架所提供的内置方法。控制器的名称一般与文件名相同,在访问时会将控制器名称与URI字符串进行匹配,确定执行的方法。

    1. 视图

    视图是用于显示内容的HTML页面模板,位于 application/views 目录下。CI7框架提供了视图对象(即 $this->load->view() 方法)来加载视图模板。视图模板中可以使用变量和控制器中传入的数据、HTML标签等。

    在控制器中调用视图模板:

    class My_model extends CI_Model {
      public function get_user($id) {
        $query = $this->db->get_where('user', array('id' => $id));
        return $query->row_array();
      }
    }

    在视图模板中动态解析数据:

    class My_controller extends CI_Controller {
      public function index() {
        $this->load->model('my_model');
    
        $user = $this->my_model->get_user(1);
        $data['user'] = $user;
    
        $this->load->view('user_profile', $data);
      }
    }

    其中,使用的PHP短标签 e001818591141260ad444db4de1b1edb 可输出变量值。

    1. 模型

    模型是CI7框架中用于处理数据库相关操作的对象,位于 application/models 目录下。开发者可以通过模型对象与数据库进行交互,例如对数据库进行增、删、改、查等操作,以及对数据进行搜索、筛选等操作。

    使用CI7框架内置的Active Record类与Mysql数据库进行交互,示例代码如下:

    <html>
    <head>
      <title>User Profile</title>
    </head>
    <body>
      <h1><?= $user['name'] ?></h1>
      <p><?= $user['email'] ?></p>
    </body>
    </html>

    在控制器中调用模型对象:

    rrreee

    在视图模板中动态解析数据:

    rrreee

    其中,使用 $this->db->get_where()View ist eine HTML-Seitenvorlage zur Anzeige von Inhalten, die sich im Verzeichnis application/views befindet. Das CI7-Framework stellt Ansichtsobjekte (d. h. die Methode $this->load->view()) zum Laden von Ansichtsvorlagen bereit. In der Ansichtsvorlage können im Controller übergebene Variablen und Daten, HTML-Tags usw. verwendet werden.

    Rufen Sie die Ansichtsvorlage im Controller auf:

    rrreee

    Analysieren Sie die Daten in der Ansichtsvorlage dynamisch:

    rrreee🎜 Unter anderem kann das PHP-Kurztag e001818591141260ad444db4de1b1edb die Variable ausgeben Wert. 🎜🎜🎜Model🎜🎜🎜Model ist ein Objekt, das zur Abwicklung datenbankbezogener Vorgänge im CI7-Framework verwendet wird und sich im Verzeichnis application/models befindet. Entwickler können über Modellobjekte mit der Datenbank interagieren, z. B. die Datenbank hinzufügen, löschen, ändern und überprüfen sowie Daten suchen und filtern. 🎜🎜Verwenden Sie die in das CI7-Framework integrierte Active Record-Klasse, um mit der MySQL-Datenbank zu interagieren. Der Beispielcode lautet wie folgt: 🎜rrreee🎜 Rufen Sie das Modellobjekt im Controller auf: 🎜rrreee🎜 Analysieren Sie die Daten dynamisch in der Ansichtsvorlage: 🎜 rrreee🎜 Unter anderem führt die Methode $this->db->get_where() Abfrageoperationen aus und konvertiert die Abfrageergebnisse nach einer Reihe von Operationen in ein Array und gibt sie zurück. 🎜🎜IV. Fazit🎜🎜CodeIgniter 3.1.11 ist ein hervorragendes PHP-Framework, das die Entwicklungseffizienz verbessern und die Codekopplung reduzieren kann. Dieser Artikel stellt die Installation, Konfiguration und einfache Verwendung des CI7-Frameworks vor und hofft, Entwicklern dabei zu helfen, dieses Framework besser zu beherrschen. 🎜

    Das obige ist der detaillierte Inhalt vonWie verwende ich das CI7-Framework in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme:
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn