ホームページ  >  記事  >  PHPフレームワーク  >  3 分で swoole フレームワークを学びましょう

3 分で swoole フレームワークを学びましょう

coldplay.xixi
coldplay.xixi転載
2021-04-29 18:02:294901ブラウズ

3 分で swoole フレームワークを学びましょう

まえがき

最近スウールについて勉強してきたので、感想を書いてみます。 swoole ベースのオープンソース フレームワークは数多くありますが、Baidu には長所と短所があり、WebSocket とコンシューマー キューを使用する場合は、swoole ベースのフレームワークを選択することをお勧めします。さて、早速、Wu Daxian が swoole の簡単な紹介をします。

推奨 (無料):swoole

##Text

swoole には 2 つの部分があります。 1 つは C で開発された PHP 拡張機能で、これがコアとなります。もう 1 つは、Yii、TP、Laravel など、PHP コードで書かれたフレームワークです。

swoole 拡張機能自体は Web サーバー機能を提供し、php-fpm を置き換えることができます。また、swoole フレームワークのみを使用する場合は、他の PHP フレームワークと同様に、nignx や Apache などの Web サーバーで実行できます。

swoole フレームワークは、PHP フレームワークと同様、Web 開発に適しています。 swoole 拡張機能は、http だけでなく UDP、TCP、その他のプロトコルを使用できる下位レベルのサーバー通信メカニズムを提供します。

インストール方法も異なり、swoole 拡張機能は他の PHP 拡張機能と同様に、pecl を使用するか、コンパイルしてインストールすることができます。 swoole フレームワークは、composer で導入した後にインストールすることも、ソース コードをダウンロードした後に手動でインクルード/要求することもできます。

また、swoole フレームワークは swoole 拡張機能に依存しており、swoole 拡張機能の応用例です。

Framework-Swoole extension-Swoole Document Center http://wiki.swoole.com/wiki/page/p-framework.html

Swoole 拡張機能が基盤です。 Web フレームワークだけでなく、複数のフレームワークを開発することもできます。

フレームワークは、独自のインターフェイス オブジェクト メカニズムを使用します。

フレームワークを呼び出す最初のステップ require('config.php'); には、まず config.php を含める必要があり、その後 $php オブジェクトが生成されます。コントローラー、モデル、またはビューにある場合は、$this->swoole を通じて呼び出します。関数またはその他の組み込みプログラム内にある場合は、グローバル $php を通じて参照されます。

##$php->db$php- > ;cache#$php->tpl##Smarty テンプレート エンジン インターフェイス #$php->modelModel オブジェクト インターフェイスの呼び出し$php->mvcMVC 構造データ$php->pluginプラグイン システム インターフェイス
<?php 
/* 
导入config.php文件,这是调用框架必须的第一步 
config.php会载入基本配置选项,和基本函数,并生成全局接口变量$php 
在代码的任何位置处,都可以通过global $php来引用全局接口对象 
*/
require(&#39;config.php&#39;); 
$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'); 
?>
ディレクトリ仕様:ルート ディレクトリは $ROOT であると仮定します。
データベース インターフェイス
キャッシュ システム インターフェイス
$ROOT/apps

$ROOT /apps: アプリケーション コード。このディレクトリ内のコードはパブリックであり、クラス、構成、テンプレート、コントローラー、モデルなどが含まれます。 js、css、jpg、html などの静的ファイルはこのディレクトリに配置せず、すべて .php ファイルにする必要があります。このディレクトリでは、http への直接アクセスは許可されません。

Ø $ROOT/apps/controllers Web アプリケーション コントローラー クラス コード

Ø $ROOT/apps/models データ モデルのカプセル化クラス コード

Ø $ROOT/apps/ configs 構成ファイルを作成し、$php->config['db']['master'] を通じて

Ø ROOT/apps/classes クラス ライブラリにアクセスします。ここには、すべてのユーザー定義クラスが保存されており、psr に準拠する必要があります。 -0 を指定する場合、ファイル名は {クラス名}.php、最上位の名前空間は App

Ø $ROOT/apps/templates テンプレート ファイル ディレクトリ

である必要があります。

² 名前空間: 新しい App\Hello\Test クラスなど、$ROOT/apps/classes/Hello/Test.php

² 構成ファイル: $php->config など['db'][ 'master'] または Swoole::getInstance()->config['db']['master'] は $ROOT/apps/configs/db.php ファイルにマッピングされます。 db.php で返される必要があり、キーは master です。

² データ モデル: model('UserInfo') または $php->model->UserInfo は $ROOT/apps/models/UserInfo.php

$ROOT/ にマッピングされますstatic

静的ファイル ディレクトリ (js、css、jpg、html など)。

$ROOT/index.php

Web Web サイトの 1 つのエントリ ファイルは、ルート ディレクトリに直接配置することも、$ROOT/ などの保存用の別のディレクトリを作成することもできます。 webroot/index.php

$ROOT/server.php

サーバープログラムの起動入り口。

ControllerController

swoole の MVC 管理を使用する場合、コントローラー クラスは次の仕様に準拠する必要があります

² コードは apps\controllers ディレクトリに配置されます

² クラス名の最初の文字は大文字にする必要があります

² Swoole\Controller

から継承する必要があります

以上が3 分で swoole フレームワークを学びましょうの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。