定制 zegnat/website-starter 二次开发

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

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

zegnat/website-starter

Composer 安装命令:

composer create-project zegnat/website-starter

包简介

My minimum viable setup for starting a PHP project.

README 文档

README

The PHP Website Starter is my minimum viable setup for starting a PHP project.

What my minimum setup is changes all the time, and this repository will change with it. The idea is that, whenever I start a new website project, I can get a checkout of the current state of this repository without having to think about where I will start.

This is heavily inspired by the Fermi Framework and even uses similar dependencies. But I have a slightly different way of wanting to handle my configurations and base dependencies.

Usage

Via Composer

$ composer create-project zegnat/website-starter

Current Practices

  1. Using Auryn to get actual dependency injections. Never pass around a container.
  2. Using PSR-7 HTTP message objects with PSR-17 factories for all request and response handling.
  3. Using nyholm/psr7-server to create the initial PSR-7 request.
  4. Using Middleland to run through all configured PSR-15 Middlewares.
  5. Using FastRoute to parse requested URIs and find the matching PSR-15 RequestHandlers.
  6. Using a Zend Emitter to output a final response to the web server.
  7. Using PHP CS Fixer to check all code against a somewhat opinionated set of style rules based on the Symfony Coding Standards.
  8. Using PHPUnit to test all classes used in the project and generate coverage reports using phpdbg.

PSR-7 & PSR-17 Providers

By default this project loads Diactoros for its PSR-7 objects and matching PSR-17 factories.

The providers can easily be swapped for a different set of implementations. Simply remove the dependency from composer and add a new one. Example:

$ composer remove zendframework/zend-diactoros
$ composer require nyholm/psr7

Then change the injector configuration to tell Auryn which factories it should use. In the case of nyholm/psr7 all of them can be defined as Nyholm\Psr7\Factory\Psr17Factory::class.

License

The BSD Zero Clause License (0BSD). Please see the LICENSE file for more information.

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: 0BSD
  • 更新时间: 2018-01-07

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固