PHP ile farklı bir yöntemle TC Validasyonu

Arraylerle fazla uğraştığımın farkındayım ama dilin birkaç güzelliğinden yararlanmak gerek.

function validateTcKimlikNo($number) {
    if (count(array_unique(array_slice(str_split($number),0,10))) === 1) {
        return false;
    }
    $initial = array_slice(str_split($number), 0, 9);
    $result = array_intersect_key($initial, array_flip(range(0, 9, 2)));
    array_push($initial, (array_sum($result) * 7 - array_sum(array_diff_key($initial, $result))) %10);
    array_push($initial, array_sum($initial) % 10);
    return (int)implode($initial) === $number;
}