介绍swoole http_server 适配 thinkphp 5.1

介绍swoole  http_server 适配 thinkphp 5.1

1、环境说明

  • thinkphp 5.1
  • swoole 4.0.2
  • 阿里云CentOS 7.4 

推荐(免费):swoole

2、开发

立即学习PHP免费学习笔记(深入)”;

1.在tp根目录下新建一个server目录,用来存放swool_http_server。

介绍swoole  http_server 适配 thinkphp 5.1

http_server.php 代码代码

<?php /**  * Created by PhpStorm.  * Date: 2018/7/22  * Time: 15:12  */ $http = new swoole_http_server(&#39;0.0.0.0&#39;, 8811);  //set函数用于设置swoole_server运行时的各项参数 $http->set([     'worker_num'=&gt;4 ,//worker process num ]);  //此事件在Worker进程/Task进程启动时发生 $http-&gt;on('WorkerStart',function (swoole_server $server, $worker_id){     // 定义应用目录     define('APP_PATH', __DIR__ . '/../application/');     // 加载基础文件 ThinkPHP 引导文件     require __DIR__ . '/../thinkphp/base.php';  });  $http-&gt;on('request', function ($request, $response){      if($request-&gt;server){         foreach ($request-&gt;server as $key =&gt; $val){             $_SERVER[strtoupper($key)] = $val;         }     }     if($request-&gt;header){         foreach ($request-&gt;header as $key =&gt; $val){             $_SERVER[strtoupper($key)] = $val;         }     }     if($request-&gt;get){         foreach ($request-&gt;get as $key =&gt; $val){             $_GET[$key] = $val;         }     }     if($request-&gt;post){         foreach ($request-&gt;post as $key =&gt; $val){             $_POST[$key] = $val;         }     }     ob_start();     try{         // thinkphp 执行应用并响应         thinkContainer::get('app')             -&gt;run()             -&gt;send();     }catch (Exception $exception){         // todo     }     $res = ob_get_contents();     ob_end_clean();     $response-&gt;end($res); });  $http-&gt;start();

2. 进入service目录,执行 php http_server.php 启动swoole_http_server

介绍swoole  http_server 适配 thinkphp 5.1

没有报错,启动成功。

3. 在index 新建一个测试方法,访问服务器8811端口

介绍swoole  http_server 适配 thinkphp 5.1

介绍swoole  http_server 适配 thinkphp 5.1

3、问题

.swoole 不会注销$_GET $_POST …. 超全局变量

以上就是介绍

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享