学习workerman以前须要知道的几种php回调写法

 

 

在workerman中会常常使用,咱们先写一个回调函数,当某个行为被触发后使用该函数处理相关逻辑。php

在PHP中最经常使用的几种回调写法以下node

匿名函数作为回调微信

匿名函数(Anonymous functions),也叫闭包函数(closures),容许临时建立一个没有指定名称的函数。最常常用做回调函数(callback)参数的值。固然,也有其它应用的状况。yii2

匿名函数的回调常常将其赋给一个变量(或一个对象的属性)闭包

 

 

最终结果会输出11。框架

这中间有一个use的用法,如今不少框架都在使用,包括我本身发布的 yii2-wx 在处理微信付款结果通知的时候也有用到。yii

简单点说就是当咱们设置了匿名函数的时候,能够从父做用域继承变量,好比以下代码函数

 

 

则结果是21,没错,匿名函数体可使用继承过来的变量 $number。学习

一点要注意的是,这种继承是在函数被定义的时候就肯定了,好比以下代码this

 

 

结果仍是21,后面从新的赋值并无起到做用。

那咱们如何解决这个问题那?

@nai8@

只须要将继承的变量设置为引用便可,以下

 

 

搞定了,22出现了。1 + 10 + 11;

在workerman中通常匿名函数做为回调用法以下

 

 

普通函数做为回调

这种用法并无什么能够多说的,不像匿名函数那么多细节,直接看代码。

 

 

 

 在这里没有use用法,而且函数定义和赋值给变量顺序谁上谁下均可以,在语法上这只是对add的一次变量赋值,之因此能做为回调是咱们使用了add() 致使的,在workerman中通常用法以下

 

 

类方法做为回调

学习了前面的知识,类的方法做为回调就好学了,一句话:将一个类的公共方法做为回调函数;

直接上在workerman中的用法

 

 

咱们将MyClass的onMsg方法做为回调赋值给$worker->onMessage。

类静态方法作为回调

这个最简单了,看代码。

 

 

咱们将MyClass的静态方法onMsg方法做为回调赋值给worker->onMessage,由于是静态方法,在onMsg内不能用this哈。

以上就是学习workerman以前须要知道的几种php回调写法的详细内容

有须要学习交流的友人请加入Swoole交流群的我们一块儿,有问题一块儿交流,一块儿进步!前提是你是学技术的。感谢阅读!

点此加入该群​jq.qq.com
相关文章
相关标签/搜索