trait ArrayTestCaseTrait
{
/**
* Asserts that two associative arrays are similar.
*
* Both arrays must have the same indexes with identical values
* without respect to key ordering
*
* @param array $expected
* @param array $array
*/
protected function assertArraySimilar(array $expected, array $array)
{
$this->assertTrue(count(array_diff_key($array, $expected)) === 0);
foreach ($expected as $key => $value) {
if (is_array($value)) {
$this->assertArraySimilar($value, $array[$key]);
} else {
$this->assertContains($value, $array);
}
}
}
}$a = array(
'1' => 12,
'3' => 14,
'6' => 11
);
$b = array(
'1' => 12,
'3' => 14,
'6' => 11
);
$c = array(
'3' => 14,
'1' => 12,
'6' => 11
);
$d = array(
'1' => 11,
'3' => 14,
'6' => 11
);
$a == $b; // evaluates to true
$a === $b; // evaluates to true
$a == $c; // evaluates to true
$a === $c; // evaluates to false
$a == $d; // evaluates to false
$a === $d; // evaluates to false