Сравнение двух массивов, содержащих имена файлов, и загрузка файла, который не является общим [duplicate]

У меня есть два массива и код для поиска array_diff:

$obs_ws = array("you", "your", "may", "me", "my", "etc");
$all_ws = array("LOVE", "World", "Your", "my", "etc", "CoDe");

$final_ws = array_diff($all_ws, $obs_ws);

Выше кода, выдающий выходной массив как:

$final_ws = array("LOVE", "World", "Your", "CoDe");

Но я хочу, чтобы это было:

$final_ws = array("LOVE", "World", "CoDe");

Примечание. «Ваш» не удаляется, возможно, из-за того, что «Y» находится в шапках во втором массиве. Я также хочу исключить «Твой», так же как и в [PHP].

Я попробовал array_udiff, но я не понимаю, как это использовать в моей проблеме

Спасибо

9
задан 9 December 2009 в 22:41

1 ответ

Ты был на правильном пути. Это мое предложение:

function array_casecmp($arr1,$arr2){
    return array_udiff($arr1,$arr2,'strcasecmp');
}


$obs_ws = array("you", "your", "may", "me", "my", "etc");
$all_ws = array("LOVE", "World", "Your", "my", "etc", "CoDe");
var_dump( array_casecmp($all_ws,$obs_ws) );
3
ответ дан 15 August 2018 в 16:52
  • 1
    Почему бы не просто передать имя функции 'strcasecmp' в качестве третьего параметра? – Ivan Nevostruev 9 December 2009 в 23:58
  • 2
    Вы правы, я должен. – Jage 10 December 2009 в 00:26

Другие вопросы по тегам:

Похожие вопросы: