Wolle besteht aus zwei Teilen. Eine davon ist eine in C entwickelte PHP-Erweiterung, die den Kern bildet. Das andere ist ein Framework wie Yii, TP und Laravel, das in PHP-Code geschrieben ist.
Die Swoole-Erweiterung selbst bietet Webserver-Funktionalität und kann PHP-FPM ersetzen. Und wenn Sie nur das Swoole-Framework verwenden, kann es wie andere PHP-Frameworks auf Webservern wie Nignx und Apache ausgeführt werden.
Swoole Framework eignet sich wie das PHP Framework für die Webentwicklung. Die Swoole-Erweiterung bietet einen Serverkommunikationsmechanismus auf niedrigerer Ebene, der UDP, TCP und andere Protokolle verwenden kann, nicht nur http.
Die Installationsmethode ist auch anders. Die Swoole-Erweiterung wird wie andere PHP-Erweiterungen installiert. Sie können pecl verwenden oder kompilieren und installieren. Das Swoole-Framework kann nach der Einführung mit Composer installiert werden, oder Sie können es nach dem Herunterladen des Quellcodes manuell einbinden/anfordern.
Darüber hinaus basiert das Swoole-Framework auf der Swoole-Erweiterung und ist ein Anwendungsbeispiel für die Swoole-Erweiterung.
Framework-Swoole-Erweiterung – Swoole Document Center http://wiki.swoole.com/wiki/page/p-framework.html
Swoole-Erweiterung ist die Grundlage, auf der eine Vielzahl von Frameworks erstellt werden können. Es ist nicht nur ein Web-Framework.
Empfohlen (kostenlos): swoole
Das Framework verwendet einen einzigartigen Schnittstellenobjektmechanismus.
Der erste Schritt beim Aufrufen des Frameworks, require('config.php'); muss zuerst config.php enthalten, und dann wird das $php-Objekt generiert. Wenn es sich im Controller, Model oder View befindet, rufen Sie es über $this->swoole auf. Wenn es sich in einer Funktion oder einem anderen enthaltenen Programm befindet, wird es über das globale $php referenziert.
$php->db |
Datenbankschnittstelle |
$php->cache |
Cachesystemschnittstelle |
$php->tpl
|
Intelligente Template-Engine-Schnittstelle
|
$php->model
|
Rufen Sie die Modellobjektschnittstelle auf
|
$php->mvc
| MVC-Strukturdaten
|
$php->plugin
|
Plug-in-Systemschnittstelle
|
<?php
/* 导入config.php文件,这是调用框架必须的第一步
config.php会载入基本配置选项,和基本函数,并生成全局接口变量$php
在代码的任何位置处,都可以通过global $php来引用全局接口对象
*/require('config.php');
$res = $php->db->query('select * from test_table'); //执行SQL语句,得到一个查询的结果,查询结果,可以获取数据 $res->fetch(); //获取单条数据。是字段-值,组成的关联数组。 $res->fetchall(); //获取全部 $data = array();
$data['title'] = 'hello wolrd!';
$data['author'] = 'me';
$php->db->insert($data,'test_table'); //将关联数组按照键值对应转为字段-值对应,插入到数据库表test_table中。
//insert into test_table(title,author) values('hello wolrd!','me') /* $php->db->delete() 删除数据
$php->db->update() 更新数据
具体请参考Database类
*//* 模板操作,内置smarty模板引擎
*/$php->tpl->assign('title','hello world!');
$php->tpl->display('index.html');
?>
Verzeichnisspezifikation
setzt voraus, dass das Stammverzeichnis $ROOT ist.
$ROOT/apps
$ROOT /apps: Anwendungscode, der Code in diesem Verzeichnis ist öffentlich, einschließlich Klassen, Konfigurationen, Vorlagen, Controller, Modell usw. Statische Dateien wie js, css, jpg, html usw. dürfen nicht in diesem Verzeichnis abgelegt werden. Sie müssen alle .php-Dateien sein. Dieses Verzeichnis erlaubt keinen http-Direktzugriff. ... Ø $ROOT /apps/configs Konfigurationsdatei, Zugriff über $php->config['db']['master']
Ø
ROOT/apps/classes Klassenbibliothek, in der alle Benutzer gespeichert sind Die definierte Klasse muss der psr-0-Spezifikation entsprechen, der Dateiname muss {Klassenname}.php sein und der Namespace der obersten Ebene muss App
Ø
$ROOT/apps/ sein. Vorlagen Vorlage Dateiverzeichnis ² Namespace: wie neue AppHelloTest-Klasse, die $ROOT/apps/classes/Hello/Test.php
² Konfigurationsdatei zugeordnet wird : wie $ php->config['db']['master'] oder Swoole::getInstance()->config['db']['master'] wird
$ROOT/ zugeordnet apps/configs/db.php-Datei muss ein Array in db.php zurückgegeben werden, und der key ist master.
² Datenmodell: model('UserInfo') oder $php->model->UserInfo wird $ROOT/apps/models/UserInfo.php zugeordnet $ROOT/static
Statisches Dateiverzeichnis, wie js, css, jpg, html usw. $ROOT/index.php
Die einzelne Eintragsdatei der Website kann direkt im Stammverzeichnis abgelegt werden, oder es kann ein separates Verzeichnis zur Speicherung erstellt werden, z. B. $ROOT/webroot /index.php
$ROOT/server.php
Starteingang des Serverprogramms. Controller
Controller verwendet swooles
MVC-Management. Die Controller-Klasse muss den folgenden Spezifikationen entsprechen
² Der Code wird im
appscontrollers-Verzeichnis
abgelegt ² Klassenname Initiale Der erforderliche Buchstabe wird groß geschrieben
² und muss von SwooleController geerbt werden
Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung des Schnellstarts des Swoole-Frameworks. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!