PHP Класс lazyrecord\schema\SchemaUtils

Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
buildSchemaMap ( array $schemas ) * static public function find_schema_parents(array $classes) { $parents = []; foreach ($classes as $class) { $schema = new $class; // declare schema foreach ($schema->relations as $relKey => $rel ) { if (!isset($rel['foreign_schema'])) { continue; } $foreignClass = ltrim($rel['foreign_schema'],'\\'); $schema = new $foreignClass; if ($rel->type == Relationship::BELONGS_TO) { $parents[$class][] = $foreignClass; } else if ($rel->type == Relationship::HAS_ONE || $rel->type == Relationship::HAS_MANY) { $parents[$foreignClass][] = $class; } } } return $parents; }
expandSchemaClasses ( array $classes ) Get referenced schema classes and put them in order.
filterBuildableSchemas ( array $schemas ) Filter non-dynamic schema declare classes.
findSchemasByArguments ( ConfigLoader $loader, array $args, CLIFramework\Logger $logger = null ) : array Returns schema objects.
findSchemasByConfigLoader ( ConfigLoader $loader, CLIFramework\Logger $logger = null )
findSchemasByPaths ( array $paths = null, CLIFramework\Logger $logger = null )
printSchemaClasses ( array $classes, CLIFramework\Logger $logger = null )

Описание методов

buildSchemaMap() публичный статический метод

* static public function find_schema_parents(array $classes) { $parents = []; foreach ($classes as $class) { $schema = new $class; // declare schema foreach ($schema->relations as $relKey => $rel ) { if (!isset($rel['foreign_schema'])) { continue; } $foreignClass = ltrim($rel['foreign_schema'],'\\'); $schema = new $foreignClass; if ($rel->type == Relationship::BELONGS_TO) { $parents[$class][] = $foreignClass; } else if ($rel->type == Relationship::HAS_ONE || $rel->type == Relationship::HAS_MANY) { $parents[$foreignClass][] = $class; } } } return $parents; }
public static buildSchemaMap ( array $schemas )
$schemas array

expandSchemaClasses() публичный статический метод

Get referenced schema classes and put them in order.
public static expandSchemaClasses ( array $classes )
$classes array

filterBuildableSchemas() публичный статический метод

Filter non-dynamic schema declare classes.
public static filterBuildableSchemas ( array $schemas )
$schemas array

findSchemasByArguments() публичный статический метод

Returns schema objects.
public static findSchemasByArguments ( ConfigLoader $loader, array $args, CLIFramework\Logger $logger = null ) : array
$loader LazyRecord\ConfigLoader
$args array
$logger CLIFramework\Logger
Результат array schema objects

findSchemasByConfigLoader() публичный статический метод

public static findSchemasByConfigLoader ( ConfigLoader $loader, CLIFramework\Logger $logger = null )
$loader LazyRecord\ConfigLoader
$logger CLIFramework\Logger

findSchemasByPaths() публичный статический метод

public static findSchemasByPaths ( array $paths = null, CLIFramework\Logger $logger = null )
$paths array
$logger CLIFramework\Logger

printSchemaClasses() публичный статический метод

public static printSchemaClasses ( array $classes, CLIFramework\Logger $logger = null )
$classes array
$logger CLIFramework\Logger