私は配列を持っています
array('apples', 'oranges', 'grapes', 'watermelons', 'bananas');
そして、リンゴとオレンジしかない場合、この配列を印刷したくありません。それ、どうやったら出来るの?
ここでこの例を見ることができます:
$haystack = array(...);
$target = array('foo', 'bar');
if(count(array_intersect($haystack, $target)) == count($target)){
// all of $target is in $haystack
}
リンゴとオレンジを取り出して、何も残っていないか確認します。
$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);
if (in_array('apples', $array) && in_array('oranges', $array) && count($array) == 2)
{
// Don't print array
}
最初に、配列に必要な要素の最小量を指定します。たとえば、この場合は5で、次に関数count()を使用します。whosリファレンスはhttp://php.net/manual/en/function.count.phpにあります。
if(count(array) >= 5)
{{
//perform action
}
配列に入る要素の数が事前にわかっている場合は、次のことができます。
<?php
$expectedCount = 5; //in this example, we are looking for five elements in our array
if(count($array) == $expectedCount)
{
var_dump($array);
}