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


WordPress post meta nesting arrays instead of adding to array

我正在为一些我认为很简单的事情而苦苦挣扎。检索一个帖子元数组,搜索它并添加到它。如果已添加用户,则搜索永远不会找到用户,并且从我所看到的,元键值最终是一个越来越嵌套的多维数组。

// 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);
}

var_dump的users_signed_up,通过避免in_array搜索来添加几个用户。

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) } 
$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);
}

假设原始数组是正确的,应该这样做