i have these two associative arrays
// the needle array
$a = array(
"who" => "you", 
"what" => "thing", 
"where" => "place",
"when" => "hour"
);
// the haystack array
$b = array(
"when" => "time", 
"where" => "place", 
"who" => "you",
"what" => "thing"
);
i want to check if the $a has a match with the b with it's exact key and value
and if each key and value from $a has an exact match in $b.... i want to increment the value of a variable $c by 1 and so on...
as we've seen from above there 3 possible match... 
and supposedly results to increment the value of $c by 3
$c = "3";
i hope some genius can help me...
OP actually used array_intersect_assoc() for their specific usecase. (check comment)
The original answer was not really useful for their case!
you can look into the php's array_diff_assoc() function or the array_intersect() function.
Here's a sample on counting the matched values:
<?php
  $a = array(
    "who" => "you", 
    "what" => "thing", 
    "where" => "place",
    "when" => "hour"
  );
  // the haystack array
  $b = array(
    "when" => "time", 
    "where" => "place", 
    "who" => "you",
    "what" => "thing"
  );
  $c = count(array_intersect($a, $b));
  echo $c;
?>
CODEPAD link.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With