我正在为一些我认为很简单的事情而苦苦挣扎。检索一个帖子元数组,搜索它并添加到它。如果已添加用户,则搜索永远不会找到用户,并且从我所看到的,元键值最终是一个越来越嵌套的多维数组。
// 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);
}
假设原始数组是正确的,应该这样做