php – 使用OOP在wordpress中添加add_action?
发布时间:2020-12-13 22:50:03 所属栏目:PHP教程 来源:网络整理
导读:我正在学习OOP,我想我已经掌握了它.我的问题是为什么wordpress样板插件的作者写了这样的添加动作函数 add_action('admin_init',array($this,'admin_init')); 根据codex,我理解add_action钩子,要传递的参数是$tag“$function_to_add被挂钩的动作的名称”,以及
我正在学习OOP,我想我已经掌握了它.我的问题是为什么wordpress样板插件的作者写了这样的添加动作函数
add_action('admin_init',array(&$this,'admin_init')); 根据codex,我理解add_action钩子,要传递的参数是$tag“$function_to_add被挂钩的动作的名称”,以及你想挂钩的函数$function_to_add. 我理解OOP中的函数是方法,我可以看到为什么这可能会改变语法,但这只是一个模糊的表示,我想要一个明确的答案,为什么作者使用数组,然后使用& $this.我理解为什么人们会使用$this->属性但不太确定& $this. 它只是你如何引用该方法?如果是这样,我仍然不理解数组,为什么它看起来不像$this-> admin_init. 顺便说一句,结构看起来像这样 class my_plugin_settings { public function __construct() { // register actions add_action('admin_init','admin_init')); } public function admin_init() { //Settings here } } 解决方法
& this为PHP功能提供了上下文,它将它连接到您的admin_init函数.查看add_action的声明或查看
http://www.php.net/manual/en/function.call-user-func-array.php.
这就是PHP知道如何在该对象中使用该函数,而不是全局级函数 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |