PHP数组的唯一值,不管大小写


PHP array unique values despite of upper/lowercase

我想从数组中删除重复的值,所以我这样做

$input = array("APPL", "berry", "apple", "berry");
$result = array_unique($input);
print_r($result);

所以它会输出:

苹果,苹果,贝瑞

我想得到的结果像输出苹果只有一次,尽管小写和大写,我怎么能做到这一点?在PHP中是否有像"array_unique"这样的函数,在这种情况下,我必须使用它?

试试这个…

<?php
$input = array("APPLE", "berry", "apple", "berry");
$data = array_intersect_key($input, array_unique(array_map('strtolower', $input)));
print_r($data);
?>
https://eval.in/416659

数组区分大小写。没有函数可以在打印时忽略它,但您可以在之前更改大小写。试试这个:

$input = array("APPLE", "berry", "apple", "berry");
$lower_input = array_map('strtolower', $input);
$result2 = array_unique($lower_input);
print_r($result2);

使用说明:

function array_iunique($array) {
        return array_intersect_key(
            $array,
            array_unique(array_map("StrToLower",$array))
        );
    }