php 如何比较两个数组并从一个数组中删除数据?

How to compare two arrays and remove data from one array in php?

我有 2 个数组 PHP,一个有在线用户的 ID,第二个有空闲用户的 ID,但是在空闲用户数组中也存在一些在线用户的 ID,我想比较两个数组和从 php 中的第二个数组中删除用户 ID。我该怎么做?

使用

$idleWithoutOnline = array_diff($idleUsers, $onlineUsers);

http://php.net/manual/en/function.array-diff.php

是的,这有可能 array_diff 看一下 http://php.net/manual/en/function.array-diff.php

使用这个

$array1 = array('[param1]' ,'demo' ,'[param2]' ,'some' ,'[param3]');
$array2 = array('value1'   ,'demo' ,'value2'   ,'some' ,'value3');

array_unique( array_merge($arr_1, $arr_2) );

或者你可以这样做:

$arr_1 = array_diff($arr_1, $arr_2);
$arr_2 = array_diff($arr_2, $arr_1);
$online_users = array(1, 5, 7, 8);
$idle_users = array(6, 4, 5, 8, 9);

for($i = 0; $i < count($idle_users); $i++)
{
    foreach($online_users as $v)
    {
        if($idle_users[$i] == $v)
        {
            unset($idle_users[$i]);
        }
    }
}

print_r($idle_users); // This will give you 6,4,9 as idle users