Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果数组2中存在数组1的元素_Php_Arrays - Fatal编程技术网

Php 如果数组2中存在数组1的元素

Php 如果数组2中存在数组1的元素,php,arrays,Php,Arrays,这有点像in_数组,但当in_数组检查数组中是否存在一个元素并相应地返回true和false时,我想知道array1的所有元素是否都是array2的一部分 例: 有什么想法吗?用于将这两个元素相交,并检查返回数组中的元素数: $intersect = array_intersect($array1, $array2); if (count($intersect) == count($array1)) { // array1 is fully contained in array2 } 用

这有点像in_数组,但当in_数组检查数组中是否存在一个元素并相应地返回true和false时,我想知道array1的所有元素是否都是array2的一部分

例:

有什么想法吗?

用于将这两个元素相交,并检查返回数组中的元素数:

$intersect = array_intersect($array1, $array2);
if (count($intersect) == count($array1)) {
   // array1 is fully contained in array2
}
用于将这两个元素相交并检查返回数组中的元素数:

$intersect = array_intersect($array1, $array2);
if (count($intersect) == count($array1)) {
   // array1 is fully contained in array2
}
将做:

<?php
$first = array('foo', 'bar');
$second = array('foo', 'bar','baz');

var_dump(array_intersect($first, $second) === $first); // True

$first = array('foo', 'bar', 'hello');
$second = array('foo', 'bar','baz');

var_dump(array_intersect($first, $second) === $first); // False
可以:

<?php
$first = array('foo', 'bar');
$second = array('foo', 'bar','baz');

var_dump(array_intersect($first, $second) === $first); // True

$first = array('foo', 'bar', 'hello');
$second = array('foo', 'bar','baz');

var_dump(array_intersect($first, $second) === $first); // False
或使用
数组_diff()

或者使用
数组_diff()


您还可以使用for循环

for ($i = 0; $i < sizeof($array1); $i++) {
  if (!in_array($array1[$i], $array2)) {
    return False;
  }
}
return True;
($i=0;$i{ if(!in_数组($array1[$i],$array2)){ 返回False; } } 返回True;
您也可以使用for循环

for ($i = 0; $i < sizeof($array1); $i++) {
  if (!in_array($array1[$i], $array2)) {
    return False;
  }
}
return True;
($i=0;$i{ if(!in_数组($array1[$i],$array2)){ 返回False; } } 返回True;
谢谢大家。接受了@alexn的回答。干杯,谢谢你们。接受了@alexn的回答。干杯