WordPress 中 do_action() 和 do_action_ref_array() 区别

  |   2019年12月3日 |  Wordpress相关 |   评论已关闭 |   21

ad
有需要可以关注公众号:“技术的世界” 分享最新技术教程,解答技术问题,有任何问题在公众号上提问,抽空会尽力解答。 另外想要什么资源,可以回复“资源”或者私信后台,可以获得丰厚的资源包哦

WordPress 中 do_action() 和 do_action_ref_array() 区别,

WordPress 中 do_action()do_action_ref_array() 区别,其实就是 。

它们的第一个参数都是回调函数,do_action() 还可以有多个参数,它们都是回调函数的参数,do_action_ref_array() 只有两个参数,第二个参数是要被传入回调函数的数组

  • 如果传递一个数组给 do_action_ref_array(),数组的每个元素的值都会当做一个参数传递给回调函数,数组的 key 回调掉。
  • 如果传递一个数组给 do_action(),整个数组会当做一个参数传递给回调函数,数字的 key 还会保留住。

比如有个如下的回调函数:

function test_callback(){
	$args	= func_get_args();
	$num	= func_num_args();
	echo $num."个参数:";
	echo "

<pre>";
	print_r($args);
	echo "</pre>
";
}

然后我们分别使用 do_action() 函数 和 do_action_ref_array() 函数进行回调:

$args = array (
	'foo'	=> 'bar',
	'hello'	=> 'world',
	0	=> 123
);

do_action('test_callback', $args);
do_action_ref_array('test_callback', $args);

最后输出结果:

1 个参数:
Array
(
    [0] => Array
        (
            [foo] => bar
            [hello] => world
            [0] => 123
        )
)

3个参数:
Array
(
    [0] => bar
    [1] => world
    [2] => 123
)

本站推荐使用的主机:,国外主机建议使用


转载请注明出处:http://tLov.cn/11045.html

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦