laravel swoole mysql_Laravel集成Swoole教程

1.准备工作

安装 Laravel

laravel new laravel-swoole

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

laravel-swoole.test

进行访问

2.引入 swoole

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

1. 在项目更目录创建一个 server 文件夹,然后在该文件夹中创建 http_server.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*/

publicfunction test(Request $request)

{return view('test');#在你的视图文件夹创建test.blade.php

}/**

* 测试2

* @param Request $request

* @return string*/

publicfunction test2(Request $request)

{return 'Hello World2:' . $request->get('name');

}

3. 启动 swoole

在终端下输入:

php server/http_server.php

访问浏览器:

http://127.0.0.1:9501/test1

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

对应的结果如下:

访问 test1 路由

7e2664bbe67825d4b28a5070c4be8df6.png

访问 test2 路由

b4454b5ab2d8f2552dc073b7ccb56da8.png

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

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值