zend-expressive-skeleton

Begin developing PSR-7 middleware applications in seconds!

Github星跟蹤圖

Expressive Skeleton and Installer

Repository abandoned 2019-12-31

This repository has moved to mezzio/mezzio-skeleton.

Build Status
Coverage Status

Begin developing PSR-15 middleware applications in seconds!

zend-expressive builds on
zend-stratigility to
provide a minimalist PSR-15 middleware framework for PHP with routing, DI
container, optional templating, and optional error handling capabilities.

This installer will setup a skeleton application based on zend-expressive by
choosing optional packages based on user input as demonstrated in the following
screenshot:

screenshot-installer

The user selected packages are saved into composer.json so that everyone else
working on the project have the same packages installed. Configuration files and
templates are prepared for first use. The installer command is removed from
composer.json after setup succeeded, and all installer related files are
removed.

Getting Started

Start your new Expressive project with composer:

$ composer create-project zendframework/zend-expressive-skeleton <project-path>

After choosing and installing the packages you want, go to the
<project-path> and start PHP's built-in web server to verify installation:

$ composer run --timeout=0 serve

You can then browse to http://localhost:8080.

Linux users

On PHP versions prior to 7.1.14 and 7.2.2, this command might not work as
expected due to a bug in PHP that only affects linux environments. In such
scenarios, you will need to start the built-in web
server
yourself,
using the following command:

$ php -S 0.0.0.0:8080 -t public/ public/index.php

Setting a timeout

Composer commands time out after 300 seconds (5 minutes). On Linux-based
systems, the php -S command that composer serve spawns continues running
as a background process, but on other systems halts when the timeout occurs.

As such, we recommend running the serve script using a timeout. This can
be done by using composer run to execute the serve script, with a
--timeout option. When set to 0, as in the previous example, no timeout
will be used, and it will run until you cancel the process (usually via
Ctrl-C). Alternately, you can specify a finite timeout; as an example,
the following will extend the timeout to a full day:

$ composer run --timeout=86400 serve

Troubleshooting

If the installer fails during the composer create-project phase, please go
through the following list before opening a new issue. Most issues we have seen
so far can be solved by self-update and clear-cache.

  1. Be sure to work with the latest version of composer by running composer self-update.
  2. Try clearing Composer's cache by running composer clear-cache.

If neither of the above help, you might face more serious issues:

Application Development Mode Tool

This skeleton comes with zf-development-mode.
It provides a composer script to allow you to enable and disable development mode.

To enable development mode

Note: Do NOT run development mode on your production server!

$ composer development-enable

Note: Enabling development mode will also clear your configuration cache, to
allow safely updating dependencies and ensuring any new configuration is picked
up by your application.

To disable development mode

$ composer development-disable

Development mode status

$ composer development-status

Configuration caching

By default, the skeleton will create a configuration cache in
data/config-cache.php. When in development mode, the configuration cache is
disabled, and switching in and out of development mode will remove the
configuration cache.

You may need to clear the configuration cache in production when deploying if
you deploy to the same directory. You may do so using the following:

$ composer clear-config-cache

You may also change the location of the configuration cache itself by editing
the config/config.php file and changing the config_cache_path entry of the
local $cacheConfig variable.

Skeleton Development

This section applies only if you cloned this repo with git clone, not when you
installed expressive with composer create-project ....

If you want to run tests against the installer, you need to clone this repo and
setup all dependencies with composer. Make sure you prevent composer running
scripts
with --no-scripts, otherwise it will remove the installer and all
tests.

$ composer update --no-scripts
$ composer test

Please note that the installer tests remove installed config files and templates
before and after running the tests.

Before contributing read the contributing guide.

主要指標

概覽
名稱與所有者zendframework/zend-expressive-skeleton
主編程語言PHP
編程語言PHP (語言數: 2)
平台
許可證BSD 3-Clause "New" or "Revised" License
所有者活动
創建於2015-10-09 21:10:08
推送於2020-01-20 17:57:26
最后一次提交2020-01-20 11:57:04
發布數49
最新版本名稱3.2.3 (發布於 2018-11-05 09:51:27)
第一版名稱0.1.0 (發布於 )
用户参与
星數135
關注者數42
派生數86
提交數1.3k
已啟用問題?
問題數77
打開的問題數3
拉請求數142
打開的拉請求數3
關閉的拉請求數52
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?