Skip to content
This repository has been archived by the owner on Jan 29, 2020. It is now read-only.

zendframework/zend-expressive-swoole

zend-expressive-swoole

Repository abandoned 2019-12-31

This repository has moved to mezzio/mezzio-swoole.

Build Status Coverage Status

This library provides the support of Swoole into an Expressive application. This means you can execute your Expressive application using Swoole directly from the command line.

Installation

Run the following to install this library:

$ composer require zendframework/zend-expressive-swoole

Configuration

After installing zend-expressive-swoole, you will need to first enable the component, and then optionally configure it.

We recommend adding a new configuration file to your autoload directory, config/autoload/swoole.local.php. To begin with, use the following contents:

<?php

use Zend\Expressive\Swoole\ConfigProvider;

return array_merge((new ConfigProvider())(), []);

The above will setup the Swoole integration for your application.

By default, Swoole executes the HTTP server with host 127.0.0.1 on port 8080. You can change these values via configuration. Assuming you have the above, modify it to read as follows:

<?php

use Zend\Expressive\Swoole\ConfigProvider;

return array_merge((new ConfigProvider())(), [
    'zend-expressive-swoole' => [
        'swoole-http-server' => [
            'host' => 'insert hostname to use here',
            'port' => 80, // use an integer value here
        ],
    ],
]);

Expressive skeleton 3.1.0 and later

If you have built your application on the 3.1.0 or later version of the Expressive skeleton, you do not need to instantiate and invoke the package's ConfigProvider, as the skeleton supports it out of the box.

You will only need to provide any additional configuration of the HTTP server.

Execute

Once you have performed the configuration steps as outlined above, you can run an Expressive application with Swoole using the following command:

$ ./vendor/bin/zend-expressive-swoole start

Call the command without arguments to get a list of available commands, and use the help meta-argument to get help on individual commands:

$ ./vendor/bin/zend-expressive-swoole help start

Documentation

Browse the documentation online at https://docs.zendframework.com/zend-expressive-swoole/

Support