Как проверить два значения в функции codeigniter in_array

#php #codeigniter

#php #codeigniter

Вопрос:

У меня есть следующие значения массива в массиве $taxIdarr

 Array ( [0] => 1 [1] => 2 [2] => 1 )
  

Как я могу проверить значение 1,2 в in_array Я использую следующий код

 if(in_array("1,2",$taxIdarr))
{
   echo "test";
}
  

Но не работает.Пожалуйста, помогите мне

Комментарии:

1. пожалуйста, уточните свой вопрос, вы хотите проверить, что содержатся как 1, так и 2?

Ответ №1:

Вы должны использовать array_intersect функцию. Пожалуйста, проверьте следующие ответы: ваш массив:

$taxIdarr = array('1', '2', '1');

теперь создайте один массив haystack, для которого вы хотите проверить, находится ли он в массиве или нет. т.е. 1 и 2

$haystack = array('1', '2');

Теперь проверьте с помощью array_intersect

 if(count(array_intersect($haystack, $taxIdarr)) > 0){
     // at least one of $taxIdarr is in $haystack
}
  

Ответ №2:

Я думаю, вы хотите проверить, присутствуют ли в массиве как 1, так и 2. В этом случае попробуйте следующее:

 if (in_array("1",$taxIdarr) amp;amp; in_array("1",$taxIdarr)) {
  echo "test";
}
  

Ответ №3:

Я меняю свой код так, чтобы он работал нормально.

 if(in_array("1",$taxIdarr) amp;amp; !in_array("2",$taxIdarr))
 {
    echo "test1";
 }

 if(in_array("2",$taxIdarr) amp;amp; !in_array("1",$taxIdarr))
 {
    echo "test2";
 }
  if(in_array("1",$taxIdarr) amp;amp; in_array("2",$taxIdarr))
 {
    echo "test3";
 }
  

Ответ №4:

 $array= Array ( "1","2","1","3" );
$target = array('1', '2');

if(count(array_intersect( array_unique($array), $target)) == count($target)){
echo "all of is in array";
}else{
echo "all of is not in array";
}