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 路由
以上内容希望帮助到大家,很多PHPer在进阶的时候总会遇到一些问题和瓶颈,业务代码写多了没有方向感,不知道该从那里入手去提升,对此我整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、MysqL优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家,需要的可以加入我的官方群点击此处。
总结以上是内存溢出为你收集整理的Laravel集成Swoole教程全部内容,希望文章能够帮你解决Laravel集成Swoole教程所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)