v0.0.9 更新内容:
适配支持 Swoole 4.1.0 一键协程化
新增进程池支持
新增模型生成时,如目录不存在则自动创建
新增ProcessManager::runWithManager方法,可以在IMI.SERVERS.CREATE.AFTER事件中使用
新增Result->getSql()、Result->getStatement()方法
新增Manager、Worker、Process进程初始化时重新播种随机数
为CoroutineChannelManager::pop()方法增加$timeout参数
新增自定义进程运行时初始化连接池等
新增使用文件锁实现进程唯一实例限制
优化ConnectContext和Group的Redis初始化判断逻辑
热更新进程现在绑定到Manager进程下
优化模型生成视图,默认第一个字段为主键
同步池子兼容swoole 4.0.3及以上
优化报错追踪准确性
模型中对数据库bit类型字段处理为bool类型
优化模型保存时null值判定逻辑
调整WorkerStart处理
调整枚举文件、类文件缓存目录方法
优化模型更新数据时支持两种命名的字段
优化模型更新时数据先转为数组
调整优化BeanFactory实例化类时参数处理逻辑
修改热更新进程启动文本
调整:IMI.INITED事件中对项目类进行扫描,热重启仅对服务器类有效
封装提取获取imi命令行方法
优化Result->get()、Result->getArray()当数据不存在时返回null
增加热更新进程启动提示
提取封装Bean类缓存相关方法
修复 Swoole <= 4.0.4 下可能会出现的热更新崩溃问题
修复数据库连接配置问题,使用username指定用户名
修复ManagerStop事件触发失败
修复CoroutineChannelManager::stats()方法
修复ConnectContext Redis存储读取问题
修复模型生成器nullable为反值的bug
修复命名空间未引入
修复模型带where条件某些情况存在的问题
修复kv存储类问题
修复缓存初始化错误
修复模型更新时带有不想关的字段
移除日志自动保存机制,现在日志会实时传入处理器
废除日志中lastTrace项 增加支持{errorFile}、{errorLine}
IMI 是基于 Swoole 开发的协程 PHP 开发框架,完美支持 Http、WebSocket、TCP、UDP 开发,拥有常驻内存、协程异步非阻塞IO等优点。
IMI 框架文档丰富,上手容易,致力于让开发者跟使用传统 MVC 框架一样顺手。
IMI 框架底层开发使用了强类型,易维护,性能更强。支持 Aop ,支持使用注解和配置文件注入,完全遵守 PSR-3、4、7、11、15、16 标准规范。
框架的扩展性强,开发者可以根据实际需求,自行开发相关驱动进行扩展。不止于框架本身提供的功能和组件!
官网:https://www.imiphp.com/
文档手册:https://doc.imiphp.com/
代码仓库:
码云:https://gitee.com/yurunsoft/IMI
Github:https://github.com/Yurunsoft/IMI
空项目:https://gitee.com/yurunsoft/empty-imi-demo
功能Demo:https://gitee.com/yurunsoft/imi-demo
我希望在以后,phper 能够自信地用着 php,不至于在项目成熟的后期被其他语言重构掉。
一个开源项目不能仅靠一个两个人,需要大家一起来完善壮大。
我们需要你的加入,以便完善:
贡献代码(BUG修复、新功能开发……)
丰富文档(文档非常重要)
教程、博客分享