千家信息网

easyswoole如何实现载入自定义配置文件夹所有配置文件的封装

发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,本篇内容主要讲解"easyswoole如何实现载入自定义配置文件夹所有配置文件的封装",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"easyswoole如何
千家信息网最后更新 2025年11月07日easyswoole如何实现载入自定义配置文件夹所有配置文件的封装

本篇内容主要讲解"easyswoole如何实现载入自定义配置文件夹所有配置文件的封装",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"easyswoole如何实现载入自定义配置文件夹所有配置文件的封装"吧!

修改easyswoole的配置类

//类文件路径 //easyswoole/vendor/easyswoole/easyswoole/src/Config.php//引入File组件use EasySwoole\Utility\File;//在类中定义方法/**     * 载入自定义配置文件夹里的所有配置文件     * @param string $dirPath 配置文件夹     * @param bool $merge 是否将内容合并入主配置     * @author : lqx_chris     */public function loadDir (string $dirPath, bool $merge = false){if(is_dir($dirPath)){$fileList = File::scanDirectory($dirPath);foreach ($fileList['files'] as $filePath){$this->loadFile($filePath,$merge);}}}

创建自己的配置目录

例:在 cache.php 和 database.php 配置文件中,我们简单写一些东西

//cache.phpreturn [  'REDIS'=>'redis',];//database.phpreturn [  'MYSQL' => ['host'          => '127.0.0.1','port'          => '3306','user'          => 'root','timeout'       => '5','charset'       => 'utf8mb4','password'      => '123456','database'      => 'easyswoole',],];

在 EasySwooleEvent.php 的 initialize 事件中载入配置

loadDir(EASYSWOOLE_ROOT . '/Config', true);//配置ORM$config = new ORMConfig(Config::getInstance()->getConf("MYSQL"));//注册ORM连接池DbManager::getInstance()->addConnection(new Connection($config));}public static function onRequest(Request $request, Response $response): bool{// TODO: Implement onRequest() method.// 请求进来时输出一下配置信息,看看是否成功var_dump(Config::getInstance()->getConf());return true;}}
//启动$ php easyswoole start//请求Easyswoolelocalhost:9501//输出信息中,除了主配置,我们可以看到我们自己文件夹的配置也合并载入了  ["MYSQL"]=>  array(7) {["host"]=>string(9) "127.0.0.1"["port"]=>string(4) "3306"["user"]=>string(4) "root"["timeout"]=>string(1) "5"["charset"]=>string(7) "utf8mb4"["password"]=>string(5) "12345"["database"]=>string(6) "easyswoole"  }  ["REDIS"]=>  string(5) "redis"

到此,相信大家对"easyswoole如何实现载入自定义配置文件夹所有配置文件的封装"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0