WordPress发布元嵌套数组而不是添加到数组

时间:2016-02-20 13:22:00

标签: php arrays wordpress

我正在努力做一些我认为简单的事情。检索后元数组,搜索并添加到其中。搜索从未找到用户,如果已经添加,我可以看到元键值最终是一个越来越嵌套的多维数组。

// Get post ID
$id = get_the_ID();

// Get array of signed up users
$users_signed_up = get_post_meta($id, 'users_signed_up', false);

// Get the user ID
$user_id = get_current_user_id();

// Search retrieved array
if (!in_array($user_id, $users_signed_up)) {

    // Add user to array
    array_push($users_signed_up, $user_id);

    // Add array back to post meta
    update_post_meta($id, 'users_signed_up', $users_signed_up);
}
通过避免in_array搜索添加了几个用户的users_signed_up的

var_dump。

array(1) { [0]=> array(2) { [0]=> array(2) { [0]=> array(1) { [0]=> int(32) } [1]=> int(36) } [1]=> int(1) } } 

然而,我希望它看起来像是这样。

array(3) { [0]=> int(1) [1]=> int(32) [2]=> int(36) } 

1 个答案:

答案 0 :(得分:3)

$users_signed_up = get_post_meta($id, 'users_signed_up', true);

if (!in_array($user_id, $users_signed_up)) {

    // Add user to array
    $users_signed_up[]= $user_id;

    // Add array back to post meta
    update_post_meta($id, 'users_signed_up', $users_signed_up);
}

应该假设原始数组是正确的