介紹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 分享