ホームページ >PHPフレームワーク >Workerman >Workerman のデータ ストレージに SQLite を使用する方法
Workerman でデータ ストレージに SQLite を使用する方法
はじめに:
Workerman は、PHP 言語で開発された高性能マルチプロセス ネットワーク プログラミング フレームワークです。豊富なネットワーク プログラミング インターフェイスと便利な拡張メカニズムを備えています。 SQLite は、小規模プロジェクトでの使用に適した軽量の組み込みデータベースです。この記事では、SQLite を使用して Workerman にデータを保存する方法を紹介し、具体的なコード例を示します。
1. SQLite データベースのセットアップ
まず、SQLite データベース ファイルを作成し、データ テーブル構造をセットアップする必要があります。 SQLite のコマンド ライン ツールまたはビジュアル ツール (Navicat など) を使用して作成できます。データ テーブル構造の例を次に示します。
CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(255) NOT NULL, `password` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2. SQLite 拡張機能のインストール
SQLite を使用する前に、PHP の SQLite 拡張機能をインストールする必要があります。次のコマンドを使用してインストールできます:
sudo apt-get install phpX.X-sqlite3
X.X を PHP のバージョン番号に置き換えてください。
3. Workerman で SQLite を使用する
require_once __DIR__ . '/vendor/autoload.php'; use WorkermanWorker; use WorkermanConnectionTcpConnection; use SQLite3;
$worker = new Worker('tcp://0.0.0.0:8000');
$worker->onConnect = function ($connection) { // 连接建立成功的回调函数 }; $worker->onMessage = function ($connection, $data) { // 接收到客户端消息的回调函数 }; $worker->onClose = function ($connection) { // 连接关闭的回调函数 }; Worker::runAll();
$worker->onConnect = function ($connection) { // 连接建立成功的回调函数 $db = new SQLite3('/path/to/your/database.sqlite'); };
/path/to/your/database.sqlite
を SQLite データベース ファイルへのパスに置き換えてください。
$worker->onMessage = function ($connection, $data) use ($db) { // 解析客户端消息... // 执行数据库操作... $username = $data['username']; $password = $data['password']; // 插入数据 $query = "INSERT INTO `user` (`username`, `password`) VALUES ('{$username}', '{$password}')"; $db->exec($query); // 查询数据 $query = "SELECT * FROM `user`"; $result = $db->query($query); while ($row = $result->fetchArray()) { // 处理查询结果... } };
$worker->onClose = function ($connection) use ($db) { // 连接关闭的回调函数 $db->close(); };
4. 完全なコード例
require_once __DIR__ . '/vendor/autoload.php'; use WorkermanWorker; use WorkermanConnectionTcpConnection; use SQLite3; $worker = new Worker('tcp://0.0.0.0:8000'); $worker->onConnect = function ($connection) { $db = new SQLite3('/path/to/your/database.sqlite'); }; $worker->onMessage = function ($connection, $data) use ($db) { $username = $data['username']; $password = $data['password']; // 插入数据 $query = "INSERT INTO `user` (`username`, `password`) VALUES ('{$username}', '{$password}')"; $db->exec($query); // 查询数据 $query = "SELECT * FROM `user`"; $result = $db->query($query); while ($row = $result->fetchArray()) { // 处理查询结果... } }; $worker->onClose = function ($connection) use ($db) { $db->close(); }; Worker::runAll();
注: 上記のコード例は単なる機能デモであり、特定のビジネス ロジックと例外処理は実際の状況に応じて変更および改善する必要があります。 。
概要:
この記事では、Workerman でのデータ ストレージに SQLite を使用する方法を紹介し、具体的なコード例を示します。この記事が読者のお役に立てれば幸いです。質問や間違いがある場合は、時間内に修正してください。
以上がWorkerman のデータ ストレージに SQLite を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。