<?php
$arr = [
'foo',
'foo',
'bar',
'baz',
'baz'
];
array_walk($arr, function (&$item, $k) use ($arr) {
$lower = mb_strtolower($item, 'utf-8');
foreach ($arr as $i => $v) {
if ($i !== $k && $v !== null && $lower === mb_strtolower($v, 'utf-8')) {
$item = null;
}
}
});
var_dump($arr);
- Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
- array(5) {
[0]=>
NULL
[1]=>
NULL
[2]=>
string(3) "bar"
[3]=>
NULL
[4]=>
NULL
}
preferences:
173.86 ms | 403 KiB | 214 Q