public static function getInstance($filepath, $class_name = __CLASS__)
{
if ($class_name != __CLASS__ && !is_subclass_of($class_name, __CLASS__)) {
throw new CFileException('Unable to spawn CFile object from `' . $class_name . '` class');
}
if (!array_key_exists($filepath, self::$_instances)) {
self::$_instances[$filepath] = new $class_name($filepath);
}
return self::$_instances[$filepath];
}