可能重复:
How can I use PHP closure function like function() use() on PHP 5.2 version?
我正在尝试在运行php 5.2的服务器上运行它。
function add_post_type($name, $args = array() ) {
add_action('init',function() use($name, $args) {
// execute custom post type code here
});
};
第二行抛出一个意外的T_FUNCTION错误,我怀疑它是“use”运算符的原因。有人可以帮我指出如何重写这个函数在php 5.2中运行吗?
答案 0 :(得分:1)
见此功能: -
/ *添加帖子类型* /
function wpse54191_plugin_init() {
add_post_type('Netherlands', array(
'supports' => array('title', 'editor', 'thumbnail', 'comments')
));
}
add_action('init', 'wpse54191_plugin_init');
/* Add Post Type */
function add_post_type($name, $args = array() ) {
if ( !isset($name) ) return;
$name = strtolower(str_replace(' ', '_', $name));
$args = array_merge(
array(
'label' => 'Members ' . ucwords($name) . '',
'labels' => array('add_new_item' => "Add New $name"),
'singular_name' => $name,
'public' => true,
'supports' => array('title', 'editor', 'comments'),
),
$args
);
register_post_type( $name, $args);
}
答案 1 :(得分:0)
这个答案似乎为您在PHP 5.2中尝试做的事情提供了一个很好的解决方案:将匿名函数转换为用户定义的函数。
祝你好运!并尝试升级您的PHP版本:P