Jef*_*eff 2 php wordpress wordpress-theming
作为PHP的新手,并且在这个"函数包装器"上花了很多时间,我想我会得到一些意见和一些反馈.如果可能的话,我想得到五条评论.
在你问之前,我有很多理由想要包装其他(WordPress)函数,主要是无忧无虑的升级.能够为每个函数定义设置自定义名称对我来说也很重要,因此$wrap array
.
但我离题了,这看起来是否可以接受且相对防弹?
function core_oo( $function )
{
$args = array_slice( func_get_args(), 1 );
$wrap = array
(
'comment' => 'the_comment',
'comments' => 'have_comments',
'post' => 'the_post',
'posts' => 'have_posts'
);
return call_user_func_array( $wrap[ $function ], $args );
}
Run Code Online (Sandbox Code Playgroud)
......并且函数将被称为......
core_oo( 'post', 'arg1', 'arg2' );
Run Code Online (Sandbox Code Playgroud)
非常感谢!
编辑:
在下面的每个混乱的sugeestion,这是声明$ wrap为静态的正确方法吗?
static $wrap = array
( ...
Run Code Online (Sandbox Code Playgroud)
好吧,你的基本目标似乎是疯狂的,但是你的基本目标是作为一个给定的,是的,这个功能看起来是一个很好的方法来实现它.
您应该声明$wrap
为static
确保每次调用函数时都不会毫无意义地重新生成数组.
还有这个:
if(!isset($wrap[$function]))
trigger_error('No underlying function known for ' . $function, E_USER_ERROR);
Run Code Online (Sandbox Code Playgroud)
可能也很聪明.
归档时间: |
|
查看次数: |
552 次 |
最近记录: |