Heim  >  Artikel  >  Backend-Entwicklung  >  Yii Framework Offizieller Leitfaden Serie 13 – Grundlagen: Entwicklungsspezifikationen

Yii Framework Offizieller Leitfaden Serie 13 – Grundlagen: Entwicklungsspezifikationen

黄舟
黄舟Original
2017-02-13 09:05:221336Durchsuche


Yii bevorzugt Spezifikation gegenüber Konfiguration. Wenn Sie die Spezifikation befolgen, können Sie ausgereifte Yii-Anwendungen erstellen, ohne komplexe Konfigurationen schreiben und verwalten zu müssen. Natürlich lässt sich Yii bei Bedarf dennoch in fast allen Aspekten per Konfiguration anpassen.

Nachfolgend erläutern wir die empfohlenen Entwicklungsspezifikationen in der Yii-Programmierung. Nehmen wir der Einfachheit halber an, dass WebRoot das Verzeichnis ist, in dem die Yii-Anwendung installiert ist.

1. URL

Standardmäßig erkennt Yii URLs im folgenden Format:

http://www.php.cn/

r Die GET-Variable bedeutet Route, in die Yii analysiert werden kann Controller und Aktionen. Wenn ActionID weggelassen wird, verwendet der Controller die Standardaktion (definiert in CController::defaultAction); wenn ControllerID ebenfalls weggelassen wird (oder die Variable r nicht vorhanden ist), verwendet die Anwendung den Standardcontroller ( definiert in Definiert in CWebApplication::defaultController).

Mit Hilfe von CUrlManager können Sie erkennbarere und SEO-freundlichere URLs erstellen, wie zum Beispiel http://www.php.cn/. Diese Funktion wird im Abschnitt URL-Verwaltung ausführlich erläutert.

2. Code

Yii empfiehlt bei der Benennung von Variablen, Funktionen und Klassen die Verwendung von Groß- und Kleinschreibung, d. h. der erste Buchstabe jedes Wortes wird großgeschrieben und ohne Leerzeichen dazwischen verbunden. Bei Variablen- und Funktionsnamen sollte das erste Wort ausschließlich in Kleinbuchstaben geschrieben sein, um sie von Klassennamen zu unterscheiden (zum Beispiel: $basePath, runController(), LinkPager). Für private Klassenmitgliedsvariablen empfehlen wir, ihren Namen einen Unterstrich voranzustellen (zum Beispiel: $_actionList).

Da Namespaces vor PHP 5.3.0 nicht unterstützt werden, empfehlen wir, Klassen auf unabhängige Weise zu benennen, um Konflikte mit Klassen von Drittanbietern zu vermeiden. Aus diesem Grund wird allen Yii-Framework-Klassennamen das Präfix „C“ vorangestellt.

Eine Sonderregel für Controller-Namen ist, dass sie mit dem Wort Controller enden müssen. Dann ist die Controller-ID der erste Buchstabe des Klassennamens in Kleinbuchstaben und das Wort Controller wird entfernt. Beispielsweise lautet die ID der Klasse PageController page . Diese Regel macht die Anwendung sicherer. Dadurch werden auch Controller-bezogene URLs einfacher (z. B. /index.php?r=page/index statt /index.php?r=PageController/index).

3. Konfiguration

Konfiguration ist ein Array von Schlüssel-Wert-Paaren. Jeder Schlüssel stellt den Eigenschaftsnamen im konfigurierten Objekt dar und jeder Wert ist der Anfangswert der entsprechenden Eigenschaft. Beispielsweise initialisiert array('name'=>'My application', 'basePath'=>'./protected') die Eigenschaften name und basePath mit ihren entsprechenden Array-Werten.

Jede beschreibbare Eigenschaft in der Klasse kann konfiguriert werden. Wenn sie nicht konfiguriert sind, verwenden Eigenschaften ihre Standardwerte. Beim Konfigurieren einer Eigenschaft empfiehlt es sich, die Dokumentation zu lesen, um sicherzustellen, dass die Anfangswerte korrekt sind.

4. Dateien

Die Konvention für die Benennung und Verwendung von Dateien hängt von ihrem Typ ab.

Klassendateien sollten nach den darin enthaltenen öffentlichen Klassen benannt werden. Beispielsweise befindet sich die CController-Klasse in der Datei CController.php. Eine öffentliche Klasse ist eine Klasse, die von jeder anderen Klasse verwendet werden kann. Jede Klassendatei sollte höchstens eine öffentliche Klasse enthalten. Private Klassen (Klassen, die nur von einer öffentlichen Klasse verwendet werden können) können in derselben Datei abgelegt werden wie die öffentliche Klasse, die sie verwendet.

Ansichtsdateien sollten nach der Ansicht benannt werden. Beispielsweise befindet sich die Ansicht index in der Datei index.php. Eine Ansichtsdatei ist eine PHP-Skriptdatei, die den HTML- und PHP-Code enthält, der zum Rendern von Inhalten verwendet wird.

Die Konfigurationsdatei kann beliebig benannt werden. Eine Konfigurationsdatei ist ein PHP-Skript, dessen Hauptzweck darin besteht, ein assoziatives Array zurückzugeben, das die Konfiguration verkörpert.

5. Verzeichnisse

Yii geht von einer Reihe von Standardverzeichnissen für verschiedene Situationen aus. Jedes Verzeichnis kann bei Bedarf angepasst werden.

  • WebRoot/protected: Dies ist das Basisverzeichnis der Anwendung, in dem alle sicherheitsrelevanten PHP-Skripte und Datendateien abgelegt werden. Yii hat einen Standardalias application, der auf dieses Verzeichnis verweist. Dieses Verzeichnis und die darin enthaltenen Dateien sollten vor dem Zugriff von Webbenutzern geschützt werden. Es kann über CWebApplication::basePath angepasst werden.

  • WebRoot/protected/runtime: Dieses Verzeichnis enthält private temporäre Dateien, die von der Anwendung generiert werden, wenn sie ausgeführt wird. Dieses Verzeichnis muss für den Webserverprozess beschreibbar sein. Es kann über CApplication::runtimePath angepasst werden.

  • WebRoot/protected/extensions: In diesem Verzeichnis werden alle Erweiterungen von Drittanbietern abgelegt. Es kann über CApplication::extensionPath angepasst werden.

  • WebRoot/protected/modules: In diesem Verzeichnis werden alle Anwendungsmodule abgelegt, und jedes Modul verwendet ein Unterverzeichnis.

  • WebRoot/protected/controllers: In diesem Verzeichnis werden alle Controller-Klassendateien abgelegt. Es kann über CWebApplication::controllerPath angepasst werden.

  • WebRoot/protected/views: In diesem Verzeichnis werden alle Ansichtsdateien abgelegt, einschließlich Controller-Ansichten, Layout-Ansichten und Systemansichten. Es kann über CWebApplication::viewPath angepasst werden.

  • WebRoot/protected/views/ControllerID: In diesem Verzeichnis werden die verwendeten Ansichtsdateien in einer einzelnen Controller-Klasse abgelegt. ControllerID bezieht sich hier auf die ID des Controllers. Es kann über CController::viewPath angepasst werden.

  • WebRoot/protected/views/layouts: In diesem Verzeichnis werden alle Layout-Ansichtsdateien abgelegt. Es kann über CWebApplication::layoutPath angepasst werden.

  • WebRoot/protected/views/system: In diesem Verzeichnis werden alle Systemansichtsdateien abgelegt. Systemansichtsdateien sind Vorlagen zur Anzeige von Ausnahmen und Fehlern. Es kann über CWebApplication::systemViewPath angepasst werden.

  • WebRoot/assets: Dieses Verzeichnis enthält öffentliche Ressourcendateien. Ressourcendateien sind private Dateien, die von Webbenutzern veröffentlicht und abgerufen werden können. Dieses Verzeichnis muss für den Webserverprozess beschreibbar sein. Es kann über CAssetManager::basePath

  • WebRoot/themes angepasst werden: In diesem Verzeichnis werden verschiedene Themen abgelegt, die von der Anwendung verwendet werden. Jedes Unterverzeichnis ist ein Thema und der Name des Themas ist der Name des Verzeichnisses. Es kann über CThemeManager::basePath angepasst werden.

6. Datenbank

Die meisten Webanwendungen werden von Datenbanken gesteuert. Für eine optimale Zeit empfehlen wir die Verwendung der folgenden Namenskonvention bei der Benennung von Tabellen und Spalten. Beachten Sie, dass diese Spezifikationen für Yii nicht erforderlich sind.

  • Datenbanktabellennamen und Spaltennamen werden in Kleinbuchstaben benannt.

  • Wörter im Namen sollten durch Unterstriche getrennt werden (z. B. product_order).

  • Für Tabellennamen können Sie entweder den Singular oder den Plural verwenden. Aber verwenden Sie nicht beides gleichzeitig. Der Einfachheit halber empfehlen wir die Verwendung von Singularnamen.

  • Tabellennamen können ein gemeinsames Präfix verwenden, z. B. tbl_ . Dies ist besonders nützlich, wenn die von einer Anwendung verwendete Tabelle in derselben Datenbank koexistiert wie eine von einer anderen Anwendung verwendete Tabelle. Die Tabellen dieser beiden Anwendungen können durch die Verwendung unterschiedlicher Tabellenpräfixe leicht unterschieden werden.

Das Obige ist der offizielle Leitfaden zum Yii-Framework, Serie 13 – Grundkenntnisse: Entwicklungsspezifikationen. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn).

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