Laravel集成Swoole教程

Laravel集成Swoole教程,第1张

概述1.准备工作 安装 Laravel laravel new laravel-swoole 本人使用 valet 进行开发,可以使用 laravel-swoole.test 进行访问 2.引入 swoo

1.准备工作

安装 Laravel

laravel new laravel-swoole

 

本人使用 valet 进行开发,可以使用

laravel-swoole.test

 

进行访问

2.引入 swoole

具体的 swoole 安装请移步官网进行下载,编译,安装,这里不多阐述了。

1. 在项目更目录创建一个 server 文件夹,然后在该文件夹中创建 http_server.PHP 文件,具体的文件内容如下

<?PHP$http = new swoole_http_server('127.0.0.1',9501);$http->set([    'worker_num' => 8,'max_request' => 5000,//    'document_root' => '/Users/apple/Code/Teacher_Project/swoole_live/resources/live/',//    'enable_static_handler' => true,]);//工作进程启动$http->on('WorkerStart',function ($serv,$worker_ID) {    //加载index文件的内容    require __DIR__ . '/../vendor/autoload.PHP';    require_once __DIR__ . '/../bootstrap/app.PHP';});//监听http请求$http->on('request',function ($request,$response) {    //server信息    if (isset($request->server)) {        foreach ($request->server as $k => $v) {            $_SERVER[strtoupper($k)] = $v;        }    }    //header头信息    if (isset($request->header)) {        foreach ($request->header as $k => $v) {            $_SERVER[strtoupper($k)] = $v;        }    }    //get请求    if (isset($request->get)) {        foreach ($request->get as $k => $v) {            $_GET[$k] = $v;        }    }    //post请求    if (isset($request->post)) {        foreach ($request->post as $k => $v) {            $_POST[$k] = $v;        }    }    //文件请求    if (isset($request->files)) {        foreach ($request->files as $k => $v) {            $_fileS[$k] = $v;        }    }    //cookies请求    if (isset($request->cookie)) {        foreach ($request->cookie as $k => $v) {            $_cookie[$k] = $v;        }    }    ob_start();//启用缓存区    //加载laravel请求核心模块    $kernel = app()->make(Illuminate\Contracts\http\Kernel::class);    $laravelResponse = $kernel->handle(        $request = Illuminate\http\Request::capture()    );    $laravelResponse->send();    $kernel->terminate($request,$laravelResponse);    $res = ob_get_contents();//获取缓存区的内容    ob_end_clean();//清除缓存区    //输出缓存区域的内容    $response->end($res);});$http->start();

 

在路由文件加入路由:

Route::get('/test1','UsersController@test');Route::get('/test2','UsersController@test2');

 

在控制器添加方法:

/**     * 测试1     * @param Request $request     * @return string     */    public function test(Request $request)    {        return vIEw('test');#在你的视图文件夹创建test.blade.PHP    }    /**     * 测试2     * @param Request $request     * @return string     */    public function test2(Request $request)    {        return 'Hello World2:' . $request->get('name');    }

 

3. 启动 swoole

在终端下输入:

PHP server/http_server.PHP

 

访问浏览器:

http://127.0.0.1:9501/test1http://127.0.0.1:9501/test2?name=Jelly

 

对应的结果如下:

访问 test1 路由

访问 test2 路由

以上就是Laravel集成Swoole教程的详细内容

以上内容希望帮助到大家,很多PHPer在进阶的时候总会遇到一些问题和瓶颈,业务代码写多了没有方向感,不知道该从那里入手去提升,对此我整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、MysqL优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家,需要的可以加入我的官方群点击此处。

  总结

以上是内存溢出为你收集整理的Laravel集成Swoole教程全部内容,希望文章能够帮你解决Laravel集成Swoole教程所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1268041.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存