tp5.0框架结合的问题

0

GatewayWorker与tp5.0框架结合


下载DEMO后, 把DEMO放到了extend下面,现在可以调用GatewayWorker的函数, 但Evnets里面写框架的函数就会提示找不到, 有什么办法或文档吗? 查了一天没找到方案

360截图17081024586399.png
已邀请:

six

赞同来自: walkor

不是把两个框架代码放一起就能直接整合了,那样的话我可以把tp和laravel框架代码放一起,就直接能用二者的所有特性了?
如果你不熟悉两个框架内部执行机制流程,整合是很困难的。其实大部分情况没必要把2者代码揉在一起,比如你可能只需要tp的数据库用法,那直接在gatewayWorker里composer安装tp的orm就行了。


安装tp数据库orm


composer require topthink/think-orm

加载composer的autoload.php
start.php里头部加上


// vendor是执行composer require topthink/think-orm 后生成的目录
require_once __DIR__ . '/vendor/autoload.php';

使用


use think\facade\Db;
class Events {
public static function onWorkerStart()
{
Db::setConfig([
// 默认数据连接标识
'default' => 'mysql',
// 数据库连接信息
'connections' => [
'mysql' => [
// 数据库类型
'type' => 'mysql',
// 主机地址
'hostname' => '127.0.0.1',
// 用户名
'username' => 'root',
// 数据库名
'database' => 'demo',
// 数据库编码默认采用utf8
'charset' => 'utf8',
// 数据库表前缀
'prefix' => 'think_',
// 数据库调试模式
'debug' => true,
],
],
]);
}

public static function onMessage($client_id, $data)
{
Db::table('xxx')->xxxx....;
}
}

thinkphp-orm文档 https://www.kancloud.cn/manual/think-orm/1257998


如果你需要tp的其它功能,也可以到tp的代码库里找,然后composer安装使用。


tp的其它功能组件地址 https://github.com/top-think

要回复问题请先登录注册