为什么使用PHP的扩展Swoole的时候,目前指的是swoole_http_server。
我从框架中返回内容,然后通过Swoole发还给浏览器前,
需要使用ob_*系列操作一趟,才可以把内容刷出呢!????!?!
求解,到底是什么情况下才需要用到ob_系列呢,之前也遇到过验证码突然要用ob_。
为什么使用PHP的扩展Swoole的时候,目前指的是swoole_http_server。
我从框架中返回内容,然后通过Swoole发还给浏览器前,
需要使用ob_*系列操作一趟,才可以把内容刷出呢!????!?!
求解,到底是什么情况下才需要用到ob_系列呢,之前也遇到过验证码突然要用ob_。
1 回答4.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答1.4k 阅读✓ 已解决
796 阅读
646 阅读
swoole是作为CLI程序跑的,如果不用ob_*而直接echo的话会输出到STDOUT里面,而不会返回给浏览器。
ob_*系列函数可以把echo的内容缓存下来,然后获取到某个变量里面,这样通过HTTP就可以发送给浏览器了。
如果直接return一个字符串给swoole的话应该也是不需要使用ob_*的。但是某些PHPer会习惯写echo xxx,为了兼(jiao)容(guan)这些PHPer,所以干脆统一用ob_start...ob_get_contents这样的方式。