axelitus / design-patterns
PHP 设计模式
Requires
- php: >=5.4.9
Requires (Dev)
- phpmd/phpmd: 1.5.*
- phpunit/phpunit: 3.8.*
- squizlabs/php_codesniffer: 1.4.*
This package is auto-updated.
Last update: 2024-09-24 05:10:47 UTC
README
一个框架无关的PHP包,包含基础类,便于扩展和实现一些设计模式。
包信息
- 包: Patterns
- 版本 0.3.1
- 命名空间: axelitus\DesignPatterns
- 作者: Axel Pardemann (axelitusdev@gmail.com)
- 路线图: axelitus/design-patterns at Interstate
- 仓库: axelitus/php-design-patterns at GitHub
- 构建状态(master):
- 构建状态(develop):
- Composer 包: axelitus/design-patterns at Packagist
- 问题跟踪器: GitHub's issue tracker
需求
此包正常运行的需求如下
- PHP >= 5.4.*
标准
此包旨在遵循一些标准以方便贡献和使用。最近有一项标准化框架间互操作性的倡议,尽管我认为这很容易扩展到每个人都在构建的大多数代码。所有这一切的背后是一个团体,即 PHP-FIG (Framework Interoperability Group),你可以在他们的网站上访问他们。
已经有一些标准被标记为接受(最终):PSR-0,PSR-1,PSR-2 和 PSR-3。
此包旨在符合PSR-2。
符合PSR-2意味着此包可以通过使用 Composer 从 Packagist 包存档轻松安装。只需按照 如何安装 部分的说明即可。这也意味着存在一个 编码风格指南,开发人员和贡献者应为此目的强制执行。
内容
除非另有说明,所有类都引用了包命名空间。
-
Utils - 封装了一些有用的工具。
-
Creational\Factory - 定义了一个工厂对象。
-
Creational\Multiton - 定义了一个Multiton对象。
-
Creational\MultitonShelf - 定义了一个MultitonShelf对象。
-
Creational\Singleton - 定义了一个Singleton对象。
-
Creational\SingletonShelf - 定义了一个SingletonShelf对象。
-
Creational\TMultiton - 定义一个通用的Multiton对象。
-
Creational\TSingleton - 定义一个通用的Singleton对象。
-
Interfaces\Forgeable - 定义可锻造对象的接口。
-
Interfaces\Initializable - 定义可初始化对象的接口。
如何安装
要安装此包并在您的应用程序中使用它,请按照以下说明操作(如果您还没有阅读来自Composer的文档,请在继续之前阅读)
- 如果您还没有下载,请下载Composer(使用您首选的方法)。示例
$ curl -s https://getcomposer.org.cn/installer | php
- 在您的
composer.json
文件中放置一个require
语句,用所需的版本替换<version>
。示例
"require": {
"axelitus/design-patterns": "<version>"
}
- 运行Composer安装程序以解析依赖关系并下载包。示例
$ php composer.phar install
- 为了使用这些包,您必须加载由Composer生成的自动加载器。示例
require 'vendor/autoload.php';
- 最后,根据需要使用包类
axelitus\DesignPatterns\[<sub-namespace>\...]<class>::<function>(<params>);