public static function getAllClassNamesByPathAlias($alias) { assert('is_string($alias)'); try { // not using default value to save cpu cycles on requests that follow the first exception. $classNames = GeneralCache::getEntry($alias . '.ClassNames'); } catch (NotFoundException $e) { $classNames = array(); $pathOfAlias = Yii::getPathOfAlias($alias . '.*'); if (is_dir($pathOfAlias)) { $directoryFiles = ZurmoFileHelper::findFiles($pathOfAlias); $classNames = array(); foreach ($directoryFiles as $filePath) { $filePathInfo = pathinfo($filePath); if ($filePathInfo['extension'] == 'php') { $classNames[] = $filePathInfo['filename']; } } } GeneralCache::cacheEntry($alias, $classNames); } return $classNames; }
public static function getAllClassNamesByPathFolder($folder) { assert('is_string($folder)'); $classNames = array(); $className = get_called_class(); $pathOfAlias = Yii::getPathOfAlias('application.modules.' . $className::getDirectoryName() . '.' . $folder . '.*'); if (is_dir($pathOfAlias)) { $directoryFiles = ZurmoFileHelper::findFiles($pathOfAlias); $classNames = array(); foreach ($directoryFiles as $filePath) { $filePathInfo = pathinfo($filePath); if ($filePathInfo['extension'] == 'php') { $classNames[] = $filePathInfo['filename']; } } } return $classNames; }