检查源字符串的元素是否是目标的一部分

时间:2014-01-10 22:25:20

标签: php arrays

我有两个字符串:

$source = "AA|BB|CC|DD";
$target = "AA|CC|DD|EE|BB";

两者中的分隔符为|

我必须弄清楚源的元素是否存在于目标中。 (以任何顺序)

如果源中的元素存在于target中,则程序应返回true,否则返回。

为此,我将$source$target存储在自己的数组中并使用array_intersect

$source_arr = explode("|",$source);
$target_arr = explode("|",$target);

$exists = (count($source_arr) == count(array_intersect($source_arr, $target_arr)));
if ($exists == 1) {
  echo "True";
else {
  echo "False";
}

该程序始终返回false

谁能告诉我哪里出错了?

1 个答案:

答案 0 :(得分:0)

尝试

  $count = 0;
  foreach($sourcearray as $item){
     if(in_array($item, $targetarray))
        $count++;
  }
  if (count($sourcearray) == $count)
     echo "true";
  echo "false";