教你如何优雅的删除数组的Value !array_diff()!!!

在日常开发中多多少少会遇到删除数组中的值得情况

$names = [
    '张三',
    '李四',
    '王麻子',
    '李四'
];

当然删除的方法很多 比如unset()什么的
常规的思路是先用 array_search 函数获取 李四 在 $names 中的键名;
然后使用 unset 删除;
为了严谨还得判断李四是否存在;

$key = array_search('李四', $names);
if ($key !== false) {
    unset($names[$key]);
}
还有一些骚操作就更为繁琐了
接下来我们主角登场了
$names = [
    '张三',
    '李四',
    '王麻子',
    '李四',
];
$names = array_values(array_diff($names, ['李四']));
这段代码效果可以删除所有为李四的值

为您推荐

评论已关闭