1

我有一个数组

array('apples', 'oranges', 'grapes', 'watermelons', 'bananas');

如果里面只有苹果和橘子,我不想打印这个数组。我怎么做?

4

5 回答 5

4

您可以在此处查看此示例

$haystack = array(...);

$target = array('foo', 'bar');

if(count(array_intersect($haystack, $target)) == count($target)){
    // all of $target is in $haystack
}
于 2012-12-11T14:36:11.773 回答
2

把苹果和橘子拿出来,看看有没有剩下的。

$arr = array('apples', 'oranges', 'grapes', 'watermelons', 'bananas');
$arrDiff = array_diff($arr, array('apples', 'oranges')); //take out the apples and oranges

if(!empty($arrDiff)) //there's something other than apples and oranges in the array
    print_r($arr);
于 2012-12-11T14:39:39.240 回答
1
if (in_array('apples', $array) && in_array('oranges', $array) && count($array) == 2)
{
    // Don't print array
}
于 2012-12-11T14:33:14.643 回答
0

如果您事先知道要进入数组的元素数量,那么您可以执行以下操作:

<?php
$expectedCount = 5; //in this example, we are looking for five elements in our array
if(count($array) == $expectedCount)
{
    var_dump($array);
}
于 2012-12-11T14:35:54.677 回答
0

首先指定数组必须具有的最小元素数量,例如在本例中为 5,然后使用函数 count(),其参考可在http://php.net/manual/en/function.count.php中找到

if(count(array) >= 5)

{

  //perform action 

}

于 2012-12-11T14:36:33.327 回答