--TEST-- Test array_diff_uassoc() function : usage variation - Comparing floating points with strings having integers and float --FILE-- $key2 ? 1 : -1; } function main() { echo "*** Testing array_diff_uassoc() : usage variation ***\n"; //Initialize variables $arr_float = array(0 => 1.0, 1 => 2.0); $arr_string_int = array('1', '2'); $arr_string_float = array('0' => '1.00', '1.00' => '2.00'); echo "\n-- Result of comparing floating points and strings containing integers --\n"; var_dump(array_diff_uassoc($arr_float, $arr_string_int, "key_compare_func")); var_dump(array_diff_uassoc($arr_string_int, $arr_float, "key_compare_func")); echo "\n-- Result of comparing floating points and strings containing floating point --\n"; var_dump(array_diff_uassoc($arr_float, $arr_string_float, "key_compare_func")); var_dump(array_diff_uassoc($arr_string_float, $arr_float, "key_compare_func")); } ?> --EXPECT-- *** Testing array_diff_uassoc() : usage variation *** -- Result of comparing floating points and strings containing integers -- array(0) { } array(0) { } -- Result of comparing floating points and strings containing floating point -- array(2) { [0]=> float(1) [1]=> float(2) } array(2) { [0]=> string(4) "1.00" ["1.00"]=> string(4) "2.00" }