PHP Master | Erstellen Sie eine CRUD -App mit YII in Minuten
yii Framework: Ein Leitfaden zum schnellen Aufbau effizienter CRUD -Anwendungen
yii ist ein Hochleistungs-PHP-Framework, das für seine Geschwindigkeit, Sicherheit und gute Unterstützung für Web 2.0-Anwendungen bekannt ist. Es folgt dem Prinzip der "Übereinkommen über die Konfiguration", was bedeutet, dass viel weniger Code geschrieben werden kann als andere Frameworks (weniger Code bedeutet weniger Fehler), solange er seinen Spezifikationen folgt. Darüber hinaus bietet YII auch viele bequeme Funktionen außerhalb des Box, wie Gerüste, Datenzugriffsobjekte, Themen, Zugriffskontrolle, Cache und mehr. In diesem Artikel werden die Grundlagen der Verwendung von YII zur Erstellung eines CRUD -Systems vorgestellt.
Schlüsselpunkte
- yii ist ein Hochleistungs-Framework, das für Web 2.0-Anwendungen geeignet ist, und bietet viele bequeme Funktionen wie Gerüste, Datenzugriffsobjekte, Themen, Zugriffskontrolle und Caching. Es folgt dem Prinzip der Konventionen über die Konfiguration, wodurch die Codemenge verringert wird, wodurch die Möglichkeit von Fehler verringert wird. Die Befehlszeilenwerkzeug
- yii wird verwendet, um Skelettanwendungen mit geeigneter Verzeichnisstruktur zu erstellen. YII folgt den MVC- und OOP -Prinzipien, und die URL -Struktur ist
yiic
. Der Controller und die zu aufgerufene Methode werden basierend auf der ID in der URL bestimmt.http://localhost/yiitest/index.php?r=controllerID/actionID
Das webbasierte Tool von yii wird verwendet, um Modelle, Controller und Formen für CRUD-Operationen zu generieren, um schnell Crud-Systeme zu entwickeln. Beispielsweise kann ein einfaches System, bei dem Benutzer CRUD -Operationen in Blog -Posts ausführen können, in wenigen Minuten entwickelt werden. -
gii
Angenommen, Sie haben Apache, PHP (5.1 oder höher) und MySQL in Ihrem System. Daher ist der erste Schritt das Herunterladen der Framework -Datei. Besuchen Sie die offizielle Website von YII und laden Sie die neueste stabile Version (1.1.13 zum Zeitpunkt des Schreibens) herunter. Entpacken Sie die ZIP-Datei, um den Ordner
abzurufen (die Versionskennung kann je nach der von Ihnen heruntergeladenen Version variieren), benennen Sie sie in um und verschieben Sie sie in Ihr Web-Accessible-Root-Verzeichnis. In meinem System ist dies yii-1.1.13.e9e4a0
, daher ist der Pfad zur Framework -Datei yii
. In diesem Artikel werde ich es C:\wamp\www
nennen, damit Sie die Aktion leicht befolgen können, auch wenn Ihre Einstellungen unterschiedlich sind. Als nächstes sollten wir überprüfen, welche Funktionen von YII von unserem System unterstützt werden. Besuchen Sie C:\wamp\www\yii
in Ihrem Browser, um die Anforderungen des Frameworks anzuzeigen. Da wir eine MySQL -Datenbank verwenden, sollten Sie die MySQL -PDO -Erweiterung aktivieren. <yiiroot></yiiroot>
http://localhost/yii/requirements/
wir möchten die Anforderungen von YII schnell überprüfen, weshalb wir die Dateien in das zugängliche Verzeichnis einfügen. Es wird jedoch empfohlen, die YII -Datei außerhalb des Webroot -Verzeichnisses zu speichern. Nach dem Überprüfen können Sie es an einen anderen Ort verschieben, wie Sie möchten.
Bewegen Sie weiter
Jede Webanwendung verfügt über eine Verzeichnisstruktur, und die YII -Anwendung muss auch eine hierarchische Struktur im Web -Root -Verzeichnis aufrechterhalten. Um eine Skelettanwendung mit der entsprechenden Verzeichnisstruktur zu erstellen, können wir das Befehlszeilen -Tool von YII Dies erstellt eine Skelettanwendung namens
zugreifen, was auf die Controller -Instanz zeigt, die sie rendert. Wenn Sie eine benutzerfreundliche URL wünschen, können Sie Folgendes in
entwickeln
Jetzt, da Sie die wichtigen YII -Konventionen gelernt haben, ist es Zeit, CRUD zu verwenden. In diesem Abschnitt werden wir ein einfaches System entwickeln, in dem Benutzer in Blog -Posts Crud -Operationen (erstellen, abrufen, aktualisieren und löschen) können.
Erstellen Sie eine MySQL -Datenbank darin. Für die Zwecke dieses Artikels hat die Tabelle nur 3 Spalten: ID, Titel und Inhalt.
. Offensichtlich sollten Sie auch die Anmeldeinformationen angeben, die Sie für die YII -Verbindung benötigen. Schritt 2 In yii sollte jede Datenbanktabelle eine Modellklasse des entsprechenden Typs Verwenden Sie dann die folgende URL, um auf prüfen Sie Schritt 3 Klicken Sie nun auf CRUD Generator. Geben Sie den Modellnamen als "Post" ein. Die Controller -ID wird automatisch als "Post" besiedelt. Dies bedeutet, dass ein neuer Controller unter dem Namen Jetzt haben Sie eine brandneue CRUD -Anwendung! Klicken Sie auf den Link "Jetzt versuchen", um ihn zu testen. Um Beiträge zu verwalten, müssen Sie sich als Schlussfolgerung yii ist sehr leistungsstark bei der Entwicklung von Web 2.0 -Projekten. Tatsächlich haben wir nur gesehen, wie einfach es ist, in wenigen Minuten ein voll funktionsfähiges CRUD -System zu erstellen! Offensichtlich kann Yii Ihnen viel Arbeit ersparen, weil Sie nicht von vorne anfangen müssen. YII liefert uns das Fundament, das wir bei Bedarf erweitern können. (Der nachfolgende FAQ -Teil ist zu lang. Es wird empfohlen, es in ein separates Dokument zu organisieren.) yiic
verwenden. Navigieren Sie zum Web -Root -Verzeichnis und geben Sie Folgendes ein: <yiiroot>/framework/yiic webapp yiitest
yiitest
mit den minimalen erforderlichen Dateien. In IT finden Sie index.php
, das als Eintragskript verwendet wird. YII basiert auf MVC- und OOP -Prinzipien, sodass Sie mit diesen Themen vertraut sein sollten. Wenn Sie mit MVC nicht vertraut sind, lesen Sie bitte den Artikel "MVC -Modus und PHP" SitePoint -Serie, der eine großartige Einführung bietet. Die YII -URL sieht aus wie http://localhost/yiitest/index.php?r=controllerID/actionID
. In einem Blog -System könnte die URL beispielsweise http://localhost/yiitest/index.php?r=post/create
sein. post
ist die Controller -ID, create
ist die Operations -ID. Das Eintragskript bestimmt, welche Controller und Methode basierend auf der ID aufgerufen werden sollen. Der Controller mit ID post
muss PostController
bezeichnet werden (ID entfernt das Suffix "Controller" aus dem Klassennamen und konvertiert den ersten Buchstaben in Kleinbuchstaben). Die Betriebs -ID ist die ID der Methode im Controller, die auf ähnliche Weise existiert. Möglicherweise sind mit dem Controller mehrere Ansichten zugeordnet, sodass wir die Ansichtsdatei im Ordner PostController
speichern. Wir können eine Ansichtsdatei mit dem Namen actionCreate()
für unseren Controller im obigen Verzeichnis erstellen und dann einfach den folgenden Code schreiben, um diese Ansicht dem Benutzer vorzustellen: protected/views/*controllerID*
create.php
public function actionCreate()
{
$this->render('create');
}
$this->render('create', array('data' => $data_item));
$data
: $this
überzeugen
protected/config/main.php
'urlManager'=>array(
'urlFormat'=>'path',
'rules'=>array(
'<w>/<d>'=>'<controller>/view',
'<w>/<w>/<d>'=>'<controller>/<action>',
'<w>/<w>'=>'<controller>/<action>',
)
)
http://localhost/yiitest/controllerID/actionID
yiitest
posts
CREATE TABLE posts (
id INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(100),
content TEXT
)
protected/config/main.php
'db'=>array(
'connectionString' => 'mysql:host=localhost;dbname=yiitest',
'emulatePrepare' => true,
'username' => 'root',
'password' => '',
'charset' => 'utf8',
)
testdrive
CActiveRecord
haben. Der Vorteil ist, dass wir Datenbanktabellen nicht direkt verarbeiten müssen. Stattdessen können wir Modellobjekte verwenden, die verschiedenen Zeilen der Tabelle entsprechen. Beispielsweise ist die Post
Klasse ein Modell der posts
-Tabelle. Ein Objekt dieser Klasse repräsentiert eine Zeile aus der Tabelle posts
und hat Attribute, die den Spaltenwert darstellen. Um das Modell schnell zu generieren, werden wir das webbasierte Tool von YII gii
verwenden. Dieses Tool kann verwendet werden, um Modelle, Controller und Formulare für CRUD -Operationen zu generieren. Um gii
in Ihrem Projekt zu verwenden, finden Sie Folgendes in der Konfigurationsdatei der Anwendung und wenden Sie sich an und fügen Sie ein Kennwort hinzu. <yiiroot>/framework/yiic webapp yiitest
gii
: http://localhost/yiitest/index.php?r=gii
zuzugreifen. Wenn Sie eine benutzerfreundliche URL verwenden, lautet die URL: http://localhost/yiitest/gii
. Klicken Sie auf Model Builder. gii
Sie werden nach dem Tabellennamen gefragt. Klicken Sie dann auf Generieren, um das Modell zu erstellen.
protected/models
, wo Sie die Datei Post.php
finden. PostController.php
generiert wird. Klicken Sie auf Generieren. Dieser Prozess generiert den Controller und mehrere Ansichtsdateien für CRUD -Operationen.
admin/admin
anmelden. Um einen neuen Beitrag zu erstellen, müssen Sie http://localhost/yiitest/post/create
besuchen, um einen bestimmten Beitrag zu aktualisieren, und richten Sie Ihren Browser nur auf http://localhost/yiitest/post/update/postID
. Auch hier können Sie alle Beiträge auflisten und einige oder alle löschen.
Das obige ist der detaillierte Inhalt vonPHP Master | Erstellen Sie eine CRUD -App mit YII in Minuten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Die Aufzählungsfunktion in Php8.1 verbessert die Klarheit und Type des Codes, indem benannte Konstanten definiert werden. 1) Aufzählungen können Ganzzahlen, Zeichenfolgen oder Objekte sein, die die Lesbarkeit der Code und die Type der Type verbessern. 2) Die Aufzählung basiert auf der Klasse und unterstützt objektorientierte Merkmale wie Traversal und Reflexion. 3) Die Aufzählung kann zum Vergleich und zur Zuordnung verwendet werden, um die Sicherheit der Typ zu gewährleisten. 4) Aufzählung unterstützt das Hinzufügen von Methoden zur Implementierung einer komplexen Logik. 5) Strenge Typ Überprüfung und Fehlerbehandlung können häufig auftretende Fehler vermeiden. 6) Die Aufzählung verringert den magischen Wert und verbessert die Wartbarkeit, achten Sie jedoch auf die Leistungsoptimierung.

Die Hijacking der Sitzung kann in den folgenden Schritten erreicht werden: 1. Erhalten Sie die Sitzungs -ID, 2. Verwenden Sie die Sitzungs -ID, 3. Halten Sie die Sitzung aktiv. Zu den Methoden zur Verhinderung der Sitzung der Sitzung in PHP gehören: 1. Verwenden Sie die Funktion Session_regenerate_id (), um die Sitzungs -ID zu regenerieren. 2. Store -Sitzungsdaten über die Datenbank, 3. Stellen Sie sicher, dass alle Sitzungsdaten über HTTPS übertragen werden.

Die Anwendung des soliden Prinzips in der PHP -Entwicklung umfasst: 1. Prinzip der Einzelverantwortung (SRP): Jede Klasse ist nur für eine Funktion verantwortlich. 2. Open and Close Principle (OCP): Änderungen werden eher durch Erweiterung als durch Modifikation erreicht. 3.. Lischs Substitutionsprinzip (LSP): Unterklassen können Basisklassen ersetzen, ohne die Programmgenauigkeit zu beeinträchtigen. 4. Schnittstellen-Isolationsprinzip (ISP): Verwenden Sie feinkörnige Schnittstellen, um Abhängigkeiten und nicht verwendete Methoden zu vermeiden. 5. Abhängigkeitsinversionsprinzip (DIP): Hoch- und niedrige Module beruhen auf der Abstraktion und werden durch Abhängigkeitsinjektion implementiert.

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Die RESTAPI -Designprinzipien umfassen Ressourcendefinition, URI -Design, HTTP -Methodenverbrauch, Statuscode -Nutzung, Versionskontrolle und Hassoas. 1. Ressourcen sollten durch Substantive dargestellt und in einer Hierarchie aufrechterhalten werden. 2. HTTP -Methoden sollten ihrer Semantik entsprechen, z. B. Get wird verwendet, um Ressourcen zu erhalten. 3. Der Statuscode sollte korrekt verwendet werden, z. B. 404 bedeutet, dass die Ressource nicht vorhanden ist. 4. Die Versionskontrolle kann über URI oder Header implementiert werden. 5. Hateoas startet Client -Operationen durch Links als Antwort.

In PHP wird das Ausnahmebehandlung durch den Versuch, Fang, schließlich und werfen Keywords erreicht. 1) Der Try -Block umgibt den Code, der Ausnahmen auslösen kann. 2) Der Catch -Block behandelt Ausnahmen; 3) Block stellt schließlich sicher, dass der Code immer ausgeführt wird. 4) Wurf wird verwendet, um Ausnahmen manuell zu werfen. Diese Mechanismen verbessern die Robustheit und Wartbarkeit Ihres Codes.

Die Hauptfunktion anonymer Klassen in PHP besteht darin, einmalige Objekte zu erstellen. 1. Anonyme Klassen ermöglichen es, Klassen ohne Namen direkt im Code zu definieren, was für vorübergehende Anforderungen geeignet ist. 2. Sie können Klassen erben oder Schnittstellen implementieren, um die Flexibilität zu erhöhen. 3. Achten Sie bei der Verwendung auf Leistung und Code -Lesbarkeit und vermeiden Sie es, dieselben anonymen Klassen wiederholt zu definieren.
