根据一个数组中的元素删除另一个数组中的元素[求差集]

17-11-23 09:26 字数 388 阅读 3020
/**  
 * 根据一个数组中的元素删除另一个数组中的元素  
 * @param $targetArr  
 * @param $dependArr  
 */  
function removeValueByArray(&$targetArr, $dependArr)  
{  
    foreach ($dependArr as $row) {  
        $keysArr = array_keys($targetArr, $row);  
        $pos = isset($keysArr[0]) ? $keysArr[0] : false;  
        if (false !== $pos) {  
            array_splice($targetArr, $pos, 1);  
        }  
    }  
}  
$arr1 = [1,2,3,4,5];  
$arr2 = [2,4,6,7,10];  
removeValueByArray($arr1, $arr2);  
var_dump($arr1);  

适用于索引数组,效果和array_diff一样。只是不用接收返回值。

0人点赞>
关注 收藏 改进 举报
0 条评论
排序方式 时间 投票
快来抢占一楼吧
请登录后发表评论
站长 @ 十七度
文章
384
粉丝
23
喜欢
195
收藏
31
排名 : 1
访问 : 147.32万
私信