return 大海捞针不存在

return needle not exist in haystack

我正在使用 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'
    }

如何return大海捞针?或者有什么办法可以做到这一点?

因为您已经检查过是否所有针都存在,所以您可以 return 使用 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);
}

请注意,对于此代码中的测试数据,我已删除 $needle 变量中 b 之前的 space。由于 ' b'$haystack 中也不存在。