Gets an ordered array of passed classes including all their dependencies.
array $classes:
\ReflectionClass[] An array of sorted \ReflectionClass instances (dependencies added if needed)
\InvalidArgumentException When a class can't be loaded
private static function getOrderedClasses(array $classes) {
$map = array();
self::$seen = array();
foreach ($classes as $class) {
try {
$reflectionClass = new \ReflectionClass($class);
} catch (\ReflectionException $e) {
throw new \InvalidArgumentException(sprintf('Unable to load class "%s"', $class));
}
$map = array_merge($map, self::getClassHierarchy($reflectionClass));
}
return $map;
}