定制 jiny/config 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

jiny/config

Composer 安装命令:

composer require jiny/config

包简介

config for jinyPHP

README 文档

README

본 코드는 PHP언어로 작성된 composer 페키지 입니다. 또한 jinyPHP 프레임워크와 같이 동작을 합니다. 지니PHP는 MVC 패턴의 웹프레임워크 입니다.

데이터직렬화

데이터를 표현하는 방법은 다양합니다. 다양한 데이터를 문자열화 하여 파일로 저장 관리 할 수 있습니다. 이를 데이터 직렬화 양식이라고 합니다.

jiny/confg 페키지는 다양한 유형의 데이터 파일을 읽어 처리할 수 있습니다.

  • php array
  • ini
  • yaml

인스턴스 생성

jiny/confg 페키지는 클래스를 기반의 객체지향 코드로 작성이 되어 있습니다. 따라서, 사용하기 위해서는 먼저 클래스의 인스턴스를 생성하여 내부 매소드와 프로퍼티에 접근이 가능합니다.

보통 클래스의 인스턴스들은 new 키워드를 통하여 객체를 생성이 가능합니다. 하지만, 이렇게 객체를 생성하게 되면 여러개의 인스턴스를 생성할 수 있기 때문에 설정파일에 대한 특정 용도외 충돌이 됩니다. 보통 설정파일은 어플리케이션에서 한개만 존재하여 여러곳에서 사용을 해야 하기 때문입니다.

따라서 jiny/confg 페키지는 일반적인 new키워드로 인스턴스를 생성하는 방식을 적용하지 않습니다. 디자인 패턴중에 싱글턴 방식을 이용하여 어플리케이센에서 한개의 인스턴스만 생성 관리 되도록 유지하고 있습니다.

인스턴스를 생성하기 위해서 전용 인스턴스를 생성 반환하는 메소드를 지원합니다. 다음과 같이 정적 메소드 형태로 호출을 하여야 합니다.

\Jiny\Config::instance()

드라이버

jiny/confg 페키지는 여러 종류의 설정파일을 처리 할 수 있도록 드라이버 개념을 도입하였습니다. 처음 페키지의 인스턴스를 싱글턴 방식으로 생성할때 필요한 드라이버 인스턴스 객체를 자동으로 생성을 합니다.

초기 환경파일

초기 시스템에 대한 환경파일을 읽어 오도록 합니다. 초기 환경파일은 .env.php파일을 참고로 합니다.

커스텀 설정파일

어플리케이션에서 커스텀 환경 설정파일을 읽어 올 수 있습니다.

설정파일 등록 및 로드

설정파일을 등록하여 로드할 수 있습니다.

헬퍼함수

설정파일은 어플리케이션에서 다양한 곳에서 사용이 가능합니다. 어느곳에서 든지 설정파일을 쉽게 접근하여 사용할 수 있도록 전용 헬퍼 함수를 제공하고 있습니다.

값을 읽어오기

설정파일의 데이터는 다중배열 형태로 구성되어 있습니다. 이를 접근하기 위해서는 점을 이용하여 구분하면 됩니다.

\jiny\conf("값.값.값");

값 설정하기

읽어온 설정 데이터 배열에 값을 설정할 수 있습니다. 값을 설정할때는 두번재 인자로 키와 값을 같이 설정하면 됩니다.

conf("키.키.키", "");

인스턴스 얻기

헬퍼함수의 인자값을 전달하지 않는 경우에는 jiny/config의 인스턴스를 얻을 수 있습니다. 이렇게 얻은 인스턴스를 통하여 내부 매서드를 실행할 수 있습니다.

$Config = \jiny\conf();
$Config->data("ENV.path.conf");

업그레이드 및 정보

jiny/config 패키지는 현재 계속 기능을 개선하고 있습니다. 본 페키지 개발에 기여를 원하시는 경우 언제든제 코드를 작성하여 풀리퀘스트를 주시면 감사합니다. 보다 자세한 내용은 hojin.io 에서 확인이 가능합니다.

jiny/config 适用场景与选型建议

jiny/config 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 437 次下载、GitHub Stars 达 4, 最近一次更新时间为 2018 年 06 月 09 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「config」 「laravel」 「framwork」 「jinyphp」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 jiny/config 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 jiny/config 我们能提供哪些服务?
定制开发 / 二次开发

基于 jiny/config 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 437
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 5
  • 点击次数: 2
  • 依赖项目数: 3
  • 推荐数: 0

GitHub 信息

  • Stars: 4
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-06-09