Swoole下 生成Mysql数据表结构的方法.
1. 前言
Swoole 下提供了协程化的Mysql连接池类, 我们可以很方便地使用它进行数据库操作. 然而, PDO的一个缺点是 无论你的数据库字段是什么类型的, 返回的结果总是 string. 这无论是对于前端还是后端开发人员来说,在后续数据处理中会造成诸多不便, 解决思路是, 在程序启动的时候扫描数据库连接和数据表结构, 并生成对应的字段类型映射关系.
2. 建立默认字段映射关系
解决思路是:
- 扫描表结构和字段类型.
- 生成 字段名=>php类型映射表.
- 在得到查询结果后自动根据类型映射表转换类型
3. 用到的SQL
1 | # $table_names 逗号分隔的表名 |
1 | $types_map = [ |
4. 处理方法
1 | # 获取特殊字段类型定义. 比如 json, bool 等. |
5. 结束语
- 初始化表结构等代码最好在服务器启动最先执行.
- 代码中使用到了 Config 类, 是我的应用框架中读取和保存配置用的.
Swoole下 生成Mysql数据表结构的方法.