ThinkPHP3.1 Quick Start (1) Grundlagen
Einführung
ThinkPHP ist ein schnelles und einfaches, leichtes PHP-Entwicklungsframework, das auf MVC basiert und objektorientiert ist. Es wird unter der Open-Source-Vereinbarung Apache2 veröffentlicht und ist einfach und praktisch Designprinzipien und Aufrechterhaltung einer hervorragenden Leistung. Bei hervorragender Leistung und minimalem Code wird besonderer Wert auf Entwicklungserfahrung und Benutzerfreundlichkeit gelegt. Außerdem verfügt es über viele originelle Funktionen und Merkmale, die eine starke Unterstützung für die Entwicklung von WEB-Anwendungen bieten.
Verzeichnisstruktur
Die neueste Version von ThinkPHP finden Sie auf der offiziellen Website (http://thinkphp.cn/down/framework.html) oder Github (https://github.html). com/liu21st/thinkphp /downloads) herunterladen.
Extrahieren Sie die heruntergeladene komprimierte Datei in Ihr WEB-Verzeichnis (oder ein beliebiges Verzeichnis). Die Verzeichnisstruktur des Frameworks ist:
├─ThinkPHP.php Framework-Eintragsdatei
├ ─Gemeinsame öffentliche Framework-Dateien
├─Conf-Framework-Konfigurationsdatei
├─Framework-Erweiterungsverzeichnis erweitern
├─Lang-Kernsprachenpaketverzeichnis
├─ Verzeichnis der Lib-Kernklassenbibliothek
│ ├─Behavior-Kern-Verhaltensklassenbibliothek
│ ├─Core-Kernbasisklassenbibliothek
│ ├─In den Treiber integrierte Treiber
│ │ ├─Cache integrierter Cache-Treiber
│ │ ├─Db integrierter Datenbanktreiber
│ │ ├─TagLib integrierter Tag-Treiber
│ │ └─ Template integrierter Template-Engine-Treiber
│ └─Template integrierter Template-Engine
└─Tpl-Systemvorlagenverzeichnis
Beachten Sie, dass das Framework öffentlich ist Die Eingabedatei ThinkPHP.php kann nicht direkt ausgeführt werden. Ja, diese Datei kann nur dann normal ausgeführt werden, wenn sie in der Projekteintragsdatei aufgerufen wird (wird später besprochen). Dies ist ein Fehler, den viele Anfänger leicht machen.
Eintragsdatei
Bevor Sie beginnen, benötigen Sie einen Webserver und eine PHP-Laufumgebung. Falls Sie noch keine haben, empfehlen wir die Verwendung der integrierten Entwicklungsumgebung WAMPServer (ein integrierter Entwicklungskit für Apache, PHP und MySQL und unterstützt den Wechsel zwischen mehreren PHP-Versionen, MySQL-Versionen und Apache-Versionen) zur Verwendung von ThinkPHP für lokale Entwicklung und Tests.
Als nächstes erstellen wir zunächst ein App-Unterverzeichnis im WEB-Stammverzeichnis (diese App ist unser Projektname), erstellen dann eine index.php-Datei unter dem Verzeichnis und fügen eine einfache Codezeile hinzu:
< ;?php
require '/Verzeichnis, in dem sich das ThinkPHP-Framework befindet/ThinkPHP.php';
Die Funktion dieser Codezeile besteht darin, die Eingabedatei ThinkPHP.php des ThinkPHP zu laden Framework, das alle auf dem ersten Schritt bei der Entwicklung von Anwendungen mit ThinkPHP basiert.
Greifen Sie dann im Browser auf diese Eintragsdatei zu.
http://localhost/app/
Die Standarddatei allgemeiner Webserver ist index.php, daher müssen wir index.php nicht zur URL-Adresse hinzufügen. Nach dem Ausführen sehen wir die Willkommensseite
. Die Verzeichnisstruktur ist wie folgt:
├─index.php Eintragsdatei
├─Gemeinsames öffentliches Projektdateiverzeichnis
├─Conf-Projektkonfigurationsverzeichnis
├─Lang-Projektsprachenverzeichnis
├─Lib-Projektklasse Bibliotheksverzeichnis
│ ├─Action Action-Klassenbibliotheksverzeichnis
│ ├─Behavior Verhaltensklassenbibliotheksverzeichnis
│ ├─Modellmodellklassenbibliotheksverzeichnis
│ └─Widget Widget-Klassenbibliotheksverzeichnis
├─Laufzeitprojekt-Laufzeitverzeichnis
│ ├─Cache-Vorlagen-Cache-Verzeichnis
│ ├─Daten-Daten-Cache-Verzeichnis
│ ├─Protokolldateiverzeichnis
│ └─Temporäres Cache-Verzeichnis
└─Tpl-Projektvorlagenverzeichnis
Wenn Sie möchten, dass die Eintragsdatei des Projekts verschoben wird Außerhalb des App-Verzeichnisses müssen Sie nur den Inhalt der Eintragsdatei index.php wie folgt ändern:
define('APP_NAME','app');
define(' APP_PATH','./app/');
require '/ThinkPHP Framework Directory/ThinkPHP.php';
APP_NAME und APP_PATH werden verwendet Definieren Sie den Projektnamen und das Projektverzeichnis. Der Projektname bezieht sich normalerweise auf den Verzeichnisnamen des Projekts.
Nachdem wir die Eintragsdatei des Projekts verschoben und geändert haben, können wir über
http://localhost/
auf das App-Projekt zugreifen. Natürlich können Sie auch mehrere Unterverzeichnisse im Web-Stammverzeichnis erstellen, um mehrere Projekte bereitzustellen.
Konfiguration
Jedes Projekt verfügt über eine unabhängige Konfigurationsdatei (befindet sich in Conf/config.php im Projektverzeichnis. Das Definitionsformat der Konfigurationsdatei übernimmt die Methode, bei der PHP ein Array zurückgibt, zum Beispiel:
/). /Projektkonfigurationsdatei
return array(
'Konfigurationsparameter' => 'Konfigurationswert',
// Weitere Konfigurationsparameter
// .. .
);
Bei Bedarf können wir relevante Konfigurationselemente zur Projektkonfigurationsdatei hinzufügen. Wenn wir das Hinzufügen von Konfigurationselementen erwähnen, meinen wir normalerweise das Hinzufügen in der Projektkonfigurationsdatei:
'Konfigurationsparameter' => 'Konfigurationswert',
Konfigurationswert kann das Einschließen von Zeichenfolgen unterstützen. Für Daten einschließlich Bei Zahlen, booleschen Werten und Arrays empfehlen wir generell, Konfigurationsparameter in Großbuchstaben zu definieren. Bei Bedarf können wir auch weitere Konfigurationsdateien für das Projekt definieren.
Controller
muss für jedes Modul eine Controller-Klasse definieren. Die Namenskonvention der Controller-Klasse lautet: Modulname + Action.class.php (Modulname). Groß-/Kleinschreibung und Großschreibung des ersten Buchstabens)
Das Standardmodul des Systems ist Index, und der entsprechende Controller ist Lib/Action/IndexAction.class.php im Projektverzeichnis. Der Klassenname und der Dateiname sind konsistent. Die Standardoperation ist index, eine öffentliche Methode des Controllers. Beim ersten Generieren der Projektverzeichnisstruktur hat das System standardmäßig bereits einen Standardcontroller generiert (die Begrüßungsseite, die wir zuvor gesehen haben). Wir ändern die Indexmethode in den folgenden Code:
class IndexAction erweitert Action {
public function index(){
echo 'hello, world!';
}
}
Der Controller muss Erben Sie die Action-Klasse. Ein Modul kann mehrere Betriebsmethoden enthalten. Wenn Ihre Vorgangsmethode geschützt oder privat ist, kann der Vorgang nicht direkt über die URL aufgerufen werden.
URL-Anfrage
Die Eintragsdatei ist der einzige Einstiegspunkt für das Projekt. Alle Anfragen für das Projekt werden an die Eintragsdatei des Projekts weitergeleitet Analysieren Sie die aktuelle Anforderung anhand der URL-Parameter und -Operationen. Die zuvor besuchte URL-Adresse enthält keine Parameter, daher greift das System auf die Standardoperation (Index) des Standardmoduls (Index) zu, sodass der folgende Zugriff gleichwertig ist zum vorherigen:
http ://localhost/app/index.php/Index/index
Dieser URL-Modus ist der Standard-PATHINFO-Modus des Systems. Verschiedene URL-Modi haben unterschiedliche Methoden zum Abrufen Module und Operationen. ThinkPHP unterstützt vier URL-Typen: Normalmodus, PATHINFO, REWRITE und Kompatibilitätsmodus. Normaler Modus: Dies ist die herkömmliche GET-Parameterübergabemethode, um das aktuell aufgerufene Modul und den aktuell aufgerufenen Vorgang anzugeben, zum Beispiel:
http://localhost/app/?m=module&a=action&var=value
Der m-Parameter stellt das Modul dar, die a-Operation stellt die Operation dar (die URL-Parameternamen des Moduls und der Operation sind konfigurierbar) und das Folgende stellt andere GET-Parameter dar. PATHINFO-Modus: Dies ist der Standard-URL-Modus des Systems, der die beste SEO-Unterstützung bietet. Das System hat bereits intern eine Umgebungskompatibilitätsverarbeitung durchgeführt, sodass es die meisten Host-Umgebungen unterstützen kann. Entsprechend dem obigen URL-Muster lautet die URL-Zugriffsadresse unter dem PATHINFO-Muster:
http://localhost/app/index.php/module/action/var/value/
PATHINFO Adresse Der erste Parameter repräsentiert das Modul und der zweite Parameter repräsentiert die Operation.
Im PATHINFO-Modus kann die URL beispielsweise durch die folgende Konfiguration angepasst werden:
'URL_PATHINFO_DEPR'=>'-', // Ändern Sie das PATHINFO-Parametertrennzeichen
us Es kann auch den folgenden URL-Zugriff unterstützen:
http://localhost/app/index.php/module-action-var-value/
REWRITE-Modus: basierend auf PATHINFO-Modus Unterstützung hinzugefügt Für die Umschreiberegeln können Sie die Eintragsdatei index.php in der URL-Adresse entfernen, müssen aber zusätzlich die Umschreiberegeln des WEB-Servers konfigurieren.
Wenn es sich um Apache handelt, müssen Sie die .htaccess-Datei auf derselben Ebene wie die Eintragsdatei mit folgendem Inhalt hinzufügen:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA, PT,L]> ;
Als nächstes können Sie mit der folgenden URL darauf zugreifen:
http://localhost/app/module/action/var/value/
Kompatibilitätsmodus: Wird in speziellen Umgebungen verwendet, die PATHINFO nicht unterstützen. Die URL-Adresse lautet:
http://localhost/app/?s=/module/action/var/value/.
Koordination des Kompatibilitätsmodus Die Definition von Regeln zum Umschreiben von Webservern kann den gleichen URL-Effekt erzielen wie der REWRITE-Modus.
Ansicht
ThinkPHP verfügt über eine integrierte kompilierte Template-Engine, die auch native PHP-Vorlagen unterstützt und außerdem Template-Engine-Treiber einschließlich Smarty bereitstellt. Anders als bei Smarty verwendet ThinkPHP beim Rendern einer Vorlage die Standardpositionierungsregeln des Systems. Die Definitionsspezifikation lautet daher TPL/Modulname/Operationsname.html Das Indexmodul befindet sich unter Tpl/Index/index.html im Projektverzeichnis.
Zum Beispiel:
Hallo, {$name}!
Um die Ansicht auszugeben, muss dies im erfolgen Controller-Methode Template-Rendering-Ausgabeoperation, zum Beispiel:
class IndexAction erweitert Action {
public function index(){
$this->name = 'thinkphp'; // Vorlagenvariablenzuweisung durchführen
$this->display();
}
}
Wir geben keine Vorlage in der Anzeige an Methode, also je nach System Die Standardregel gibt die Vorlagendatei Index/index.html aus.
Als nächstes geben wir
http://localhost/app/
in den Browser ein und der Browser gibt
hello, thinkphp!
Daten lesenBevor wir beginnen, erstellen wir zunächst eine think_data-Datentabelle in der Datenbank thinkphp (am Beispiel der MySQL-Datenbank): CREATE TABLE IF NOT EXISTS ` think_data` ( `id` int(8) unsigned NOT NULL AUTO_INCREMENT, `data` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ;INSERT INTO `think_data` (`id`, `data`) VALUES(1, 'thinkphp'), (2, 'php'),(3, 'framework');Wenn wir Daten aus der Datenbank lesen müssen, müssen wir sie dem Projekt hinzufügen Konfigurationsdatei Fügen Sie Datenbankverbindungsinformationen wie folgt hinzu: // Datenbankkonfigurationsinformationen hinzufügen 'DB_TYPE' => // Datenbanktyp 'DB_HOST' => ; 'localhost', // Serveradresse'DB_NAME' => // Datenbankname'DB_USER' => 'DB_PWD' => '', // Passwort'DB_PORT' => 3306, // Port'DB_PREFIX' => , // Datenbanktabellenpräfix oder verwenden Sie die folgende Konfiguration 'DB_DSN' => 'mysql://root@localhost:3306/thinkphp' definiert mit DB_DSN Die Konfigurationsparameter können vereinfacht werden: Datenbanktyp://Benutzername:Kennwort@Datenbankadresse:Datenbankport/Datenbankname. Wenn beide Konfigurationsparameter gleichzeitig vorhanden sind, hat der Konfigurationsparameter DB_DSN Vorrang.
Als nächstes ändern wir die Controller-Methode und fügen den Code zum Lesen der Daten hinzu:
Nachdem M('Data') instanziiert wurde, können Sie die Datentabelle think_data bearbeiten (einschließlich CURD) (think_ ist das Datentabellenpräfix, das wir in der Projektkonfigurationsdatei definiert haben). Es gibt viele andere Verwendungsmöglichkeiten der M-Funktion . Wir werden später mehr darüber erfahren.
Nachdem wir den Controller definiert haben, ändern wir die Vorlagendatei und fügen das Datenausgabe-Tag wie folgt hinzu:
Wenn wir auf
3--framework
Wenn Sie die obige Ausgabe sehen, herzlichen Glückwunsch, Sie haben den Schlüssel für den Einstieg mit ThinkPHP!
Zusammenfassung
In diesem Artikel haben wir etwas über die Verzeichnisstruktur, das URL-Muster von ThinkPHP und die Erstellung von Projekteintragsdateien, Controllern und Vorlagen gelernt. Wir werden weiterhin etwas über CURD-Operationen an Daten lernen später. .
Das Obige ist der grundlegende Inhalt von ThinkPHP3.1 Quick Start (1). Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!

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

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

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



Schnellstart: Für die Installation der Pandas-Bibliothek in Python sind spezifische Codebeispiele erforderlich. 1. Überblick Python ist eine weit verbreitete Programmiersprache mit einem leistungsstarken Entwicklungsökosystem, das viele praktische Bibliotheken umfasst. Pandas ist eine der beliebtesten Datenanalysebibliotheken. Sie bietet effiziente Datenstrukturen und Datenanalysetools, die die Datenverarbeitung und -analyse erleichtern. In diesem Artikel wird die Installation der Pandas-Bibliothek in Python vorgestellt und entsprechende Codebeispiele bereitgestellt. 2. Installieren Sie Py

Wir beginnen diese Serie damit, dass wir lernen, wie man HTML-Elemente mithilfe von Mojs animiert. In diesem zweiten Tutorial verwenden wir weiterhin das Shape-Modul, um integrierte SVG-Formen zu animieren. Das dritte Tutorial behandelt weitere Möglichkeiten zum Animieren von SVG-Formen mithilfe von ShapeSwirl und dem Stagger-Modul. Jetzt lernen wir, wie man mit dem Burst-Modul verschiedene SVG-Formen in Bursts animiert. Dieses Tutorial basiert auf den Konzepten, die wir in den ersten drei Tutorials behandelt haben. Wenn Sie sie noch nicht gelesen haben, empfehle ich Ihnen, sie zuerst zu lesen. Erstellen einer einfachen Burst-Animation Bevor wir eine Burst-Animation erstellen können, müssen wir zunächst ein Burst-Objekt instanziieren. Anschließend können wir verschiedene Eigenschaften angeben

Schnellstart: Verwenden Sie Go-Sprachfunktionen, um einen einfachen Audio-Streaming-Dienst zu implementieren. Einführung: Audio-Streaming-Dienste erfreuen sich in der heutigen digitalen Welt immer größerer Beliebtheit und ermöglichen es uns, Audiodateien direkt über das Netzwerk abzuspielen, ohne einen vollständigen Download durchführen zu müssen. In diesem Artikel wird erläutert, wie Sie mithilfe der Go-Sprachfunktionen schnell einen einfachen Audio-Streaming-Dienst implementieren, damit Sie diese Funktion besser verstehen und verwenden können. Schritt 1: Vorbereitung Zunächst müssen Sie die Go-Sprachentwicklungsumgebung installieren. Sie können es von der offiziellen Website herunterladen (https://golan

Schnellstart: Verwenden Sie Go-Sprachfunktionen, um einfache Bilderkennungsfunktionen zu implementieren. In der heutigen technologischen Entwicklung ist die Bilderkennungstechnologie zu einem heißen Thema geworden. Als schnelle und effiziente Programmiersprache verfügt die Go-Sprache über die Fähigkeit, Bilderkennungsfunktionen zu implementieren. Dieser Artikel bietet den Lesern eine Kurzanleitung zur Implementierung einfacher Bilderkennungsfunktionen mithilfe der Go-Sprachfunktionen. Zuerst müssen wir die Go-Sprachentwicklungsumgebung installieren. Sie können die entsprechende Version auf der offiziellen Website der Go-Sprache herunterladen (https://golang.org/).

Titel: Schneller Einstieg: Empfohlene fünf gängige Go-Sprach-Frameworks Mit der Popularität der Go-Sprache haben sich in den letzten Jahren immer mehr Entwickler für die Verwendung von Go für die Projektentwicklung entschieden. Die Go-Sprache hat aufgrund ihrer Effizienz, Einfachheit und überlegenen Leistung große Aufmerksamkeit erhalten. Bei der Go-Sprachentwicklung kann die Auswahl eines geeigneten Frameworks die Entwicklungseffizienz und Codequalität verbessern. In diesem Artikel werden fünf häufig verwendete Frameworks in der Go-Sprache vorgestellt und Codebeispiele angehängt, um den Lesern den schnellen Einstieg zu erleichtern. Gin-Framework Gin ist ein leichtes Web-Framework, das schnell und effizient ist.

Schnellstart: Eine Anleitung zur Verwendung von fünf Kafka-Visualisierungstools 1. Kafka-Überwachungstools: Einführung Apache Kafka ist ein verteiltes Publish-Subscribe-Messagingsystem, das große Datenmengen verarbeiten kann und einen hohen Durchsatz und geringe Latenz bietet. Aufgrund der Komplexität von Kafka sind Visualisierungstools erforderlich, die bei der Überwachung und Verwaltung von Kafka-Clustern helfen. 2. Kafka-Visualisierungstools: Fünf wichtige Optionen KafkaManager: KafkaManager ist eine Open-Source-Web-Community

Schnellstart: Verwenden Sie Go-Sprachfunktionen, um die Anzeige einfacher Liniendiagramme zur Datenvisualisierung zu implementieren. Einführung: Im Bereich der Datenanalyse und -visualisierung sind Liniendiagramme ein häufig verwendeter Diagrammtyp, der den Trend von Datenänderungen über die Zeit oder andere Variablen klar darstellen kann. In diesem Artikel wird erläutert, wie Sie mithilfe der Go-Sprachfunktionen eine einfache Liniendiagrammanzeige für die Datenvisualisierung implementieren und relevante Codebeispiele bereitstellen. 1. Bevor Sie mit den Vorbereitungsarbeiten beginnen, müssen Sie die folgenden Bedingungen sicherstellen: Installieren Sie die Go-Sprachumgebung und legen Sie die relevanten Umgebungsvariablen fest. Installieren Sie die erforderlichen Abhängigkeiten

Schnellstart: Verwenden Sie Go-Sprachfunktionen, um einfache Datenaggregationsfunktionen zu implementieren. In der Softwareentwicklung stoßen wir häufig auf Situationen, in denen wir eine Reihe von Daten aggregieren müssen. Aggregationsoperationen können zählen, zusammenfassen, berechnen usw., um Daten zu analysieren und anzuzeigen. In der Go-Sprache können wir Funktionen verwenden, um einfache Datenaggregationsfunktionen zu implementieren. Zuerst müssen wir einen Datentyp definieren, der die Daten darstellt, die wir aggregieren möchten. Angenommen, wir haben die Notentabelle eines Schülers und jeder Schüler hat zwei Felder: Name und Note, dann können wir die folgende Struktur erstellen
