<?php
use think\Container;//引入thinkPhp文件的命名空间
$http = new swoole_http_server("0.0.0.0", 8811);//实例化httpserver
$http->set(
[
'enable_static_handler' => true,
'document_root' => "/usr/local/var/www/swoole_mooc/thinkphp/public/static",
'worker_num' => 5,
]
);//设置根目录和进程数
$http->on('WorkerStart',function (swoole_server $server,$worker_id){
//定义应用目录
define('APP_PATH', __DIR__ . '/../application/');
//加载框架里面的文件
require __DIR__ . '/../thinkphp/base.php';//拆分start.php里面的加载和启动
//require __DIR__ . '/../thinkphp/start.php';//拆分start.php里面的加载和启动
});
$http->on('request', function ($request, $response) use ($http){
print_r($request->server);//返回数组
$_SERVER = [];//这里swoole不会自动销毁全局变量,因此手动销毁
if (isset($request->server)){
foreach ($request->server as $k => $v){
$_SERVER[strtoupper($k
Swoole支持TP5框架
本文介绍了如何使用Swoole支持ThinkPHP5(TP5)框架,通过开启http-server服务实现Swoole对TP5框架内容的访问。同时,文章探讨了优化close()方法的必要性,并分析了在thinkphp/thinkphp/library/think/Request.php文件中导致问题的两个方法,详细阐述了解决方案,使得Swoole能够顺利监听并处理TP5的URL请求。
摘要由CSDN通过智能技术生成