Home  >  Q&A  >  body text

php - swoole的事件回调函数中无法使用全局数组是怎么回事?

如图所示,在顶级作用域中显式声明的数组在onmessage事件的回调函数中调用不到,每次都是重新使用了一个新数组然后进行操作,我试过global关键字也不起作用,还有use中的变量前面加上&引用符号也不起作用,这该怎么办啊?

天蓬老师天蓬老师2769 days ago797

reply all(3)I'll reply

  • 巴扎黑

    巴扎黑2017-04-11 10:10:56

    这叫进程隔离. 其实swoole官方文档有说.

    reply
    0
  • 天蓬老师

    天蓬老师2017-04-11 10:10:56

    我的理解是$server->on是在客户端发来信息时调用的。也就是说服务器会重新起一个进程去处理业务逻辑。
    所以,你定义什么global,use什么的都是无效的。

    reply
    0
  • PHPz

    PHPz2017-04-11 10:10:56

    其实解决这个问题有很多方法,楼上提供了几种

    reply
    0
  • Cancelreply