依赖注入容器抽象;简化PHP CLI;各种基本工具。

2.3.1 2020-06-09 15:01 UTC

README

主要特性

依赖注入容器抽象

维基百科总结的

讽刺的是,依赖注入可能鼓励对依赖注入框架的依赖。

Dependency是一个简单工具,用于减轻特定注入容器的依赖。
封装PSR-11Pimple容器,或创建自己的轻量级PSR-11容器。

简化PHP CLI(命令行/控制台)的使用

CliCommand + CliCommandInterface
以简单的方式定义PHP CLI命令,并自动生成--help输出。

CliEnvironment

  • 解析CLI输入参数和选项
  • 映射到CliCommand并执行它
  • 列出所有定义的命令的--help
  • 找到文档根目录
Utils的自身CLI命令
# List all commands in the system, and their providers.
php cli.php -h

# One command's help.
php cli.php utils-xxx -h

# (RISKY) Execute included PHP script.
php cli.php utils-execute include-file

时间

Time扩展了原生的DateTime类,以修复不足和缺陷,
并提供更多、更简单、更安全的getter和setter。

特性

  • 可转换为ISO-8601字符串
  • JSON序列化为带有时区标记的ISO-8601字符串
  • 可冻结
  • 增强时区感知
  • diff(即diffConstant)在不同时区之间正确工作
  • 更简单、更安全的getter和setter

它受到JavaScript的Date类的启发,并确保更好的JavaScript互操作性
通过强调和简化时区感知,以及通过JSON序列化为ISO-8601时间戳字符串;
不是代表PHP DateTime内部属性的虚假JavaScript对象。

可探索的

抽象的Explorable类提供了简单的方法,以便使对象的受保护成员可读,
并且可以通过专用方法可选地可变。

零散的东西

Unicode抽象了mbstring。

Sanitize提供了基本的字符串清理器和转换器。

PathList隐藏了使用FilesystemIterators的复杂性。

Utils解析ini字符串/文件,并提供了一系列其他方便的方法。

Bootstrap::prepareDependencies()用于轻松设置依赖关系。
注意:Bootstrap::prepareDependencies()需要不在composer要求列表中的包
CacheConfig,(可选)JsonLogInspectLocaleValidate

要求

开发要求

建议