You could use array_map
to convert the array first.
$result = array_count_values(array_map(function ($var) {
return $var['date'];
}, $refs));
For php < 5.3:
$dates = array();
foreach ($refs as $ref) {
$dates[] = $ref['date'];
}
$result = array_count_values($dates);
You could also not use array_count_values
and do the counting in the loop directly.