1.8.1
最后更新于:2022-04-02 06:44:29
# 1.8.1
[TOC]
## 主要更新
* 增加核心类的命名空间别名
* 增加`swoole_server->protect`方法,用于保护某些连接不被心跳线程切断
* 增加`swoole_websocker_server::pack`和`swoole_websocker_server::unpack`静态方法,用于手工打包/解包websocket数据帧
* 修复日志打印标准输出被关闭不断产生`SIGPIPE`信号导致死循环的问题
* 修复`MacOS`环境下启用`openssl`编译失败的问题
* 增加对`redis`订阅和发布消息的支持
* 修复多端口监听未设置监听端口回调发生core dump的问题
* 修复异步Client发生内存泄漏的问题
* 修复在其他事件回调函数中关闭异步Client偶然发生core dump的问题
* 增加`swoole_http_client`对`gzip`内容压缩的支持
## 命名空间示例
> 使用命名空间类风格,需要修改`php.ini`,增加`swoole.use_namespace=On`开启。使用命名空间类名后,旧式的下划线风格类名将不可用
~~~
use Swoole\Http\Server;
use Swoole\Http\Request;
use Swoole\Http\Response;
$serv = new Server('127.0.0.1', 9501);
$serv->on('Request', function(Request $req, Response $resp) {
var_dump($req->header, get_class($req));
$resp->end("
';