function get_number_that_occurring_an_odd_number_of_times_in_array(&$arr) {
$size = count($arr);
$value = 0;
for ($i = 0; $i < $size; $i++) {
$value ^= $arr[$i];
}
for ($i = 0; $i < $size; $i++) {
if ($arr[$i] == $value) {
return $value;
}
}
return -1;
}
$arr = array(1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5);
echo get_number_that_occurring_an_odd_number_of_times_in_array($arr);
/*
run:
3
*/