teknoo/reactphp-symfony

此包已被废弃,不再维护。未建议替代包。

ReactPHP与Symfony框架的桥梁

0.0.1-alpha7 2017-05-29 19:30 UTC

This package is auto-updated.

Last update: 2020-10-09 05:12:14 UTC


README

安装 & 要求

使用composer安装此库,请运行以下命令

composer require react/http:dev-master
composer require teknoo/reactphp-symfony

此库需要

* PHP 7+
* Composer
* Symfony 3.2+
* ReactPHP 0.6+

执行

通过Symfony控制台

#Env prod
bin/console reactphp:run -i 0.0.0.0 -p 8080

#End dev
bin/console reactphp:run -i 0.0.0.0 -p 8080 -e dev

通过PHP文件

#!/usr/bin/env php
<?php

use React\EventLoop\Factory as LoopFactory;
use React\Socket\Server as SocketServer;
use React\Http\Server as HttpServer;
use Teknoo\ReactPHPBundle\Bridge\RequestBridge;
use Teknoo\ReactPHPBundle\Bridge\RequestListener;
use Teknoo\ReactPHPBundle\Service\DatesService;
use Symfony\Bridge\PsrHttpMessage\Factory\HttpFoundationFactory;
use Symfony\Bridge\PsrHttpMessage\Factory\DiactorosFactory;

require __DIR__.'/../app/autoload.php';
if (\file_exists(__DIR__.'/../var/bootstrap.php.cache')) {
    include_once __DIR__ . '/../var/bootstrap.php.cache';
}

$kernel = new AppKernel('prod', false);
$kernel->loadClassCache();

$requestBridge = new RequestBridge(
    $kernel,
    new DatesService(),
    new HttpFoundationFactory(),
    new DiactorosFactory()
);
$requestListener = new RequestListener($requestBridge);

//React Loop
$loop = LoopFactory::create();
//Create front socket server
$socket = new SocketServer(8080, $loop);

//Enable HTTP server
$server = new HttpServer($requestListener);
$server->listen($socket);

//Start loop and so the server
$loop->run();

致谢

Richard Déloge - richarddeloge@gmail.com - 首席开发者。Teknoo Software - http://teknoo.software

关于Teknoo Software

Teknoo Software 是一家PHP软件编辑公司,由Richard Déloge创建。Teknoo Software的DNA很简单:向我们的合作伙伴和社区提供一套高质量的服务或软件,分享知识和技能。

许可证

ReactPHP Symfony Bridge遵循MIT许可证 - 有关详细信息,请参阅许可证文件夹

贡献 :)

欢迎您为此项目做出贡献。 在Github上Fork它