网上大多的写法大多直接在终端里的写法,没有一个完整的浏览器直观的例子,直接上代码:

订阅

ini_set('default_socket_timeout',-1);$redis=newRedis();$redis->connect('127.0.0.1',6379);$redis->auth('lizongying');$channel='msg';$redis->subscribe(array($channel),'callback');functioncallback($redis,$channel,$message){if(ob_get_level()==0){ob_start();}echostr_pad('',1024*8);echodate('Y-m-dH:i:s');var_dump($message);flush();ob_flush();ob_end_flush();}

公开

$redis=newRedis();$redis->connect('127.0.0.1',6379);$redis->auth('lizongying');$channel='msg';//channel$msg='33';//msg$redis->publish($channel,$msg);echodate('Y-m-dH:i:s');var_dump($channel.$msg);

几个点:

1 在命名空间内

new\Redis();

2 如果有密码

$redis->auth('lizongying');

3 保证socket不超时

ini_set('default_socket_timeout',-1);

4 及时刷新 测试用的chrome buffer长度加到了1024*8才起作用一些教程里是1024 或者 4096

if(ob_get_level()==0){ob_start();}echostr_pad('',1024*8);echodate('Y-m-dH:i:s');var_dump($message);flush();ob_flush();ob_end_flush();

保健食品注册咨询专家