阅读(1434) (8)

add_hook()

2017-06-13 17:10:23 更新

作用:添加 Api Hook 回调函数。 语法 null add_hook(mixed $api, callable $callback[, boolean $apiIsSet])

参数

  • $api 设置 API 名称,使用点语法,如 user.add,也可以设置为一个索引数组同时为多个 API 添加同一个回调函数。
  • $callback 回调函数,可以是一个函数名,也可以是一个匿名函数。
  • $apiIsSet 该 API 是否为一个集合,默认为 true,即同一个 API 中存储多个回调函数(数组),如果设置为 false,则该 API 仅存储 $callback 一个回调函数

别名add_action()

说明$callback 回掉函数支持最多一个参数,这个参数同时也是 do_hooks() 函数的第二个参数,在函数中可以对这个参数就行判断,修改等,最后将其返回或不反回(返回 null),甚至返回其他内容(但要求类型和这个参数相同)。

如果返回值既不是 null 也不是return error() ,则返回值会应用到 do_hooks() 函数的第二个参数上,来实现更改请求参数。

如果设置了 $apiIsSet 参数为 false,那么 return error() 也会被应用到 do_hooks() 函数的第二个参数上。

在回调函数中,可以通过判断请求参数,来决定接下来的行为,比如当请求参数不存在或者不匹配时,可以使用return error() 来返回错误信息。

影响模块操作中的回调函数,其参数永远是提交的参数构成的数组或者获取模块记录而返回的数组,参见《