2024-04-26

PHP 数组去重时有哪些内置函数可用?

php 提供了多种内置函数进行数组去重,包括:array_unique():保留唯一元素并返回新数组。array_intersect_key():交叉比对键,仅保留第一个数组中存在的键对应的值。array_unique() + array_values():先去重,再重新索引,仅保留唯一元素。

PHP 数组去重时有哪些内置函数可用?

PHP 数组去重内置函数指南

在 PHP 中,对数组进行去重是一个常见任务。PHP 提供了多种内置函数,可帮助您轻松有效地完成这项任务。

1. array_unique() 函数

array_unique() 函数通过保留数组中的唯一元素来对数组进行去重。它返回包含去重后元素的新数组。

<?php
$array = ['foo', 'bar', 'baz', 'foo', 'bar'];
$uniqueArray = array_unique($array);
登录后复制

输出:

Array
(
    [0] => foo
    [1] => bar
    [2] => baz
)
登录后复制
登录后复制

2. array_intersect_key() 函数

array_intersect_key() 函数将多个数组的键交叉对比,仅保留第一个数组中存在的键对应的值。这可以有效地对数组进行去重。

<?php
$array1 = ['foo' => 1, 'bar' => 2, 'baz' => 3];
$array2 = ['foo' => 4, 'baz' => 5];
$uniqueArray = array_intersect_key($array1, $array2);
登录后复制

输出:

Array
(
    [foo] => 1
    [baz] => 3
)
登录后复制

3. array_unique() + array_values() 函数

array_unique() 函数和 array_values() 函数也可以结合使用来对数组进行去重。array_unique() 函数首先删除重复的元素,然后 array_values() 函数重新对数组进行索引,仅保留唯一元素。

<?php
$array = ['foo', 'bar', 'baz', 'foo', 'bar'];
$uniqueArray = array_values(array_unique($array));
登录后复制

输出:

Array
(
    [0] => foo
    [1] => bar
    [2] => baz
)
登录后复制
登录后复制

实战案例

以下是一个实用案例,演示如何在 Web 应用中使用 array_unique() 函数对用户输入进行去重:

<?php
// 获取用户输入
$userInput = $_POST['user_input'];

// 将用户输入转换为数组
$array = explode(",", $userInput);

// 对数组进行去重
$uniqueArray = array_unique($array);

// 保存去重后的数组
// ...
登录后复制

使用这些内置函数,您可以轻松有效地对 PHP 数组进行去重,从而简化您的代码并提高性能。

以上就是PHP 数组去重时有哪些内置函数可用?的详细内容,更多请关注php中文网其它相关文章!

https://www.php.cn/faq/766634.html

发表回复

Your email address will not be published. Required fields are marked *