Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.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/12.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 在另一个数组中查找所有数组元素_Php_Arrays - Fatal编程技术网

Php 在另一个数组中查找所有数组元素

Php 在另一个数组中查找所有数组元素,php,arrays,Php,Arrays,我有两个数组- $ar = array("a","b","c"); $xy = array("a","b","c","d","e"); 我必须在$xy中找出$ar中的每个元素。如果所有元素都在$xy中,那么它应该返回true 我在_数组中使用了,但它返回true,尽管找到了一个元素 感谢您的帮助。 谢谢 这就是你使用它的方式 if(array_equal($ar, $xy) { // etc... } 这就是你使用它的方式 if(array_equal($ar, $xy) { // e

我有两个数组-

$ar = array("a","b","c");
$xy = array("a","b","c","d","e");
我必须在$xy中找出$ar中的每个元素。如果所有元素都在$xy中,那么它应该返回true

我在_数组中使用了,但它返回true,尽管找到了一个元素

感谢您的帮助。 谢谢

这就是你使用它的方式

if(array_equal($ar, $xy) {
  // etc...
}
这就是你使用它的方式

if(array_equal($ar, $xy) {
  // etc...
}
返回一个数组,该数组包含第一个数组中不存在于任何其他数组中的所有项:

$return = (bool) count(array_diff($ar, $xy));
返回一个数组,该数组包含第一个数组中不存在于任何其他数组中的所有项:

$return = (bool) count(array_diff($ar, $xy));
你可以用

还有一些附加代码,谢谢Brendan:

return (count($ar) == count(array_intersect($xy, $ar)));
你可以用

还有一些附加代码,谢谢Brendan:

return (count($ar) == count(array_intersect($xy, $ar)));


这里不需要三元;猜猜什么算…>0给你;它给出了$ar中不在$xycount中的元素数。。。给你号码;计数…>0给你一个boolean@rabudde计数的评估…>0已经为您提供了布尔值。不需要手动赋值:$return=countarray_diff$ar,$xy>0;就投吧。非0的一切都是真的,这里不需要三元;猜猜什么算…>0给你;它给出了$ar中不在$xycount中的元素数。。。给你号码;计数…>0给你一个boolean@rabudde计数的评估…>0已经为您提供了布尔值。不需要手动赋值:$return=countarray_diff$ar,$xy>0;就投吧。非0的一切都是正确的。答案很好,但一些代码会很有用。可能:return count$ar==countarray\u intersect$xy$ar;?答案很好,但是一些代码会很有用。可能:return count$ar==countarray\u intersect$xy$ar;?看看@gordon:That dupe可能的重复检查是否相等,这对这个问题不起作用。然而,这是一个很好的相关问题。@hakre这个问题有多种答案。它包含了OP的所有需求,如果他费心搜索的话,可以很容易地在手册中找到。傻瓜并不仅仅是为了被接受的答案而被愚弄。@Gordon:当然,我只是在说。但问题的前提不同。在另一个集合中查找所有集合,或比较两个集合是否相等。请查看@gordon:That dupe的可能重复项,该重复项检查相等性,但这不适用于此问题。然而,这是一个很好的相关问题。@hakre这个问题有多种答案。它包含了OP的所有需求,如果他费心搜索的话,可以很容易地在手册中找到。傻瓜并不仅仅是为了被接受的答案而被愚弄。@Gordon:当然,我只是在说。但问题的前提不同。在另一个集合中查找所有集合或比较两个集合是否相等。