PHP array_合并array_unique小写/大写



现在,我有一个返回函数:

return array_unique(array_merge( $sizes, $custom_sizes ));
我的问题是某个键在一个键中可以是小写的

,而在另一个键中可以是大写的。

例如,我可以得到$sizes的"缩略图"和$custom_size的"缩略图" - 在这种情况下,我当然想删除一个。

(名称大小写相同:

星球大战》VR。《星球大战》vr.《星球大战》vr."星球大战")

如何使array_unique()不区分大小写?

编辑一:以下评论,澄清:

我还希望能够选择要保留的版本(第一个数组中的版本,或第二个数组中的版本......

谷歌上的第一个点击是 PHP.net 页面,它提供:

function in_iarray($str, $a){
    foreach($a as $v){
        if(strcasecmp($str, $v)==0){return true;}
    }
    return false;
}
function array_iunique($a){
    $n = array();
    foreach($a as $k=>$v){
        if(!in_iarray($v, $n)){$n[$k]=$v;}
    }
    return $n;
}
$input = array("aAa","bBb","cCc","AaA","ccC","ccc","CCC","bBB","AAA","XXX");
$result = array_iunique($input);
print_r($result);
/*
Array
(
    [0] => aAa
    [1] => bBb
    [2] => cCc
    [9] => XXX
)
*/

相关内容

  • 没有找到相关文章

最新更新