возвратная игла не существует в стоге сена - PullRequest
0 голосов
/ 24 апреля 2020

я использую array_diff, чтобы проверить, существуют ли ВСЕ иглы

    // my code
    $needle = array(' b', 'asb');
    $haystack = array('a','b','c','d','e');

    if (empty(array_diff($needle, $haystack))) {
        echo "The NEEDLE is in HAYSTACK";      
    }else {
      echo "The NEEDLE is NOT in HAYSTACK";
      // return 'asb'
    }

как вернуть иглу не в стоге сена? или есть ли способ сделать это?

1 Ответ

0 голосов
/ 24 апреля 2020

Поскольку вы уже проверили, существуют ли все иглы, вы можете просто вернуть строку, используя implode(), чтобы объединить отсутствующие значения в какой-либо форме списка. Я извлек array_diff(), чтобы вы могли повторно использовать значение ...

$needle = array('b', 'asb');
$haystack = array('a','b','c','d','e');

$difference = array_diff($needle, $haystack);
if (empty($difference)) {
    echo "The NEEDLE is in HAYSTACK";
}else {
    echo "The NEEDLE is NOT in HAYSTACK ";
    echo implode (",", $difference);
}

Обратите внимание, что для тестовых данных в этом коде я удалил пробел перед b в переменная $needle. Поскольку ' b' также не существует в $haystack.

...