用 workerman 实现的web服务器,执行 php 文件的方法如下:
function exec_php_file($file) {
\ob_start();
// Try to include php file.
try {
include $file;
} catch (\Exception $e) {
echo $e;
}
return \ob_get_clean();
}
现在被执行的文件需要 header,请问该如何实现呢?不要回答用 response,然后 connection send 这种答案了,我的这个文件里面没有 connection 这个变量的,谢谢。
另外请问一下站长,为和标签里面没有workerman标签?都没有适合我这个问题的标签啊。
改成
这样
大神您好,还请问下这种情况下,php文件该如何获取 $_POST 变量的值呢?谢谢。
onMessage 里加一行
$_POST = $request->post();
谢谢,$_POST 这个问题解决了,但是 header 这个不行啊,主要代码如下:
$file 里面定义的 $header 变量没法传到 exec_php_file 函数里面去。
file里返回一个header数组。
我改成这样了,它不跳转啊:
但是我打开这个页面看返回的 headers ,确实有 Location 的,但是就是没跳转:
跳转是3xx,不是200
谢谢指点,改成这样,终于可以了,但是代码写的太难看了,哈哈,看来这个还是不适合做 http 服务器啊:
它本身就是底层的,不懂机制底层机制不会抽象当然乱了。
http直接用官网的webman就好了,和平时业务一样的写法,一点不乱
谢谢建议,主要是我在用 gatework 做一个即时通讯的东西,里面涉及到一点点 http 请求相关的东西,不想再用 webman 这个重型框架搞了,就想直接用 workerman 解决试一下。