m6w6/merry
Composer 安装命令:
composer require m6w6/merry
包简介
Merry container and configuration
README 文档
README
A merry configuration container.
Example:
use merry\Config; $config = new Config([ "db" => [ "dsn" => "user=mike", "flags" => pq\Connection::PERSISTENT ], "cache" => [ "pid" => "cluster1", "hosts" => ["10.0.1.1", "10.0.1.2", "10.0.1.3"] ] ]); printf("Using database: '%s'\n", $config->db->dsn); printf("Using cache cluster: '%s'\n", $config->cache->pid); $config->apply([ "db" => function($conf) { return new pq\Connection($conf->dsn, $conf->flags); }, "cache" => function($conf) { $cache = new Memcached($conf->pid); foreach ($conf->{$conf->pid}->hosts as $host) { $cache->addServer($host); } return $cache; } ]); extract($config->toArray()); if (!($q1 = $cache->get("q1"))) { $result = $db->exec("SELECT 1"); $cache->set("q1", $q1 = $result->fetchAll()); }
Another example:
use merry\Config; $array = parse_ini_string(' [localhost] db.dsn = "user=mike" db.flags = 2 ;pq\Connection::PERSISTENT cache.pid = "cluster1" cache.cluster1.hosts[] = "10.0.1.1" cache.cluster1.hosts[] = "10.0.1.2" cache.cluster1.hosts[] = "10.0.1.3" [production : localhost] db.dsn = "user=app" '); $config = new Config($array, getenv("APPLICATION_ENV")); $flags = \RecursiveTreeIterator::BYPASS_CURRENT; foreach (new \RecursiveTreeIterator($config, $flags) as $key => $val ) { printf("%s: %s\n", $key, ($val instanceof Config) ? "" : $val); }
Output:
|-db:
| |-dsn: user=app
| \-flags: 2
\-cache:
|-pid: cluster1
\-cluster1:
\-hosts:
|-0: 10.0.1.1
|-1: 10.0.1.2
\-2: 10.0.1.3
m6w6/merry 适用场景与选型建议
m6w6/merry 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 35 次下载、GitHub Stars 达 0, 最近一次更新时间为 2014 年 08 月 14 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「container」 「configuration」 「config」 「merry」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 m6w6/merry 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 m6w6/merry 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 m6w6/merry 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Configuration component
A Zend Framework module to quickly and easily set PHP settings.
A fast and intuitive dependency injection container.
Utils to load, parse and work with configuration on Mezzio projects
Server environment detection based on config array-file
Dependency injection container for the Monolith framework.
统计信息
- 总下载量: 35
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 9
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: BSD-2-Clause
- 更新时间: 2014-08-14