<?php
function isArrayOk($arr)
{
	return count($arr) == 10 &&
		array_key_exists('id', $arr) &&
		array_key_exists('name', $arr) &&
		array_key_exists('age', $arr) &&
		array_key_exists('email', $arr) &&
		array_key_exists('password', $arr) &&
		array_key_exists('birthday', $arr) &&
		array_key_exists('ip', $arr) &&
		array_key_exists('time', $arr) &&
		array_key_exists('token', $arr) &&
		array_key_exists('source', $arr)
		;
}

function isArrayOk2($arr)
{
	$keys = array('id', 'name', 'age', 'email', 'password', 'birthday', 'ip', 'time', 'token', 'source');
	return count($arr) == 10 && array_intersect($keys, array_keys($arr)) == $keys;
}

$array_good = array(
	'id' => 1,
	'name' => 'test',
	'age' => 16,
	'email' =>'a@b.com',
	'password' => 'pass',
	'birthday' => '01.01.2000',
	'ip' => '123.123.123.123',
	'time' => '11:11',
	'token' => 'token',
	'source' => 'source'
);
 
$array_bad = array(
	'id' => 1,
	'name' => 'test',
	'age' => 16,
	'email' =>'a@b.com',
	'password' => 'pass',
	'birthday' => '01.01.2000',
	'ip' => '123.123.123.123',
	'time' => '11:11',
	'token' => 'token',
	'source' => 'source',
	'one_more_field' => ''
);


var_dump(isArrayOk($array_good));
var_dump(isArrayOk($array_bad));

var_dump(isArrayOk2($array_good));
var_dump(isArrayOk2($array_bad));