PHP 클래스 Bluz\Db\Relations

저자: Anton Shevchuk
파일 보기 프로젝트 열기: bluzphp/framework 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
$modelClassMap array [ 'Pages' => '\Application\Pages\Table', 'Users' => '\Application\Users\Table', ]
$relations array [ 'Model1:Model2' => ['Model1'=>'foreignKey', 'Model2'=>'primaryKey'], 'Pages:Users' => ['Pages'=>'userId', 'Users'=>'id'], 'PagesTags:Pages' => ['PagesTags'=>'pageId', 'Pages'=>'id'], 'PagesTags:Tags' => ['PagesTags'=>'tagId', 'Tags'=>'id'], 'Pages:Tags' => ['PagesTags'], ]

공개 메소드들

메소드 설명
addClassMap ( string $model, string $className ) : void Add information about model's classes
createRow ( string $modelName, array $data ) : Row Get information about Table classes
fetch ( array $input ) : array Fetch by Divider
findRelation ( Row $row, string $relation ) : array findRelation
findRelations ( string $modelOne, string $modelTwo, array $keys ) : array Find Relations between two tables
getModelClass ( string $model ) : string Get information about Model classes
getRelations ( string $modelOne, string $modelTwo ) : array | false Get relations
setRelation ( string $modelOne, string $keyOne, string $modelTwo, string $keyTwo ) : void Setup relation between two models
setRelations ( string $modelOne, string $modelTwo, array $relations ) : void Setup multi relations

메소드 상세

addClassMap() 공개 정적인 메소드

Add information about model's classes
public static addClassMap ( string $model, string $className ) : void
$model string
$className string
리턴 void

createRow() 공개 정적인 메소드

Get information about Table classes
public static createRow ( string $modelName, array $data ) : Row
$modelName string
$data array
리턴 Row

fetch() 공개 정적인 메소드

Fetch by Divider
public static fetch ( array $input ) : array
$input array
리턴 array

findRelation() 공개 정적인 메소드

findRelation
public static findRelation ( Row $row, string $relation ) : array
$row Row
$relation string
리턴 array

findRelations() 공개 정적인 메소드

Find Relations between two tables
public static findRelations ( string $modelOne, string $modelTwo, array $keys ) : array
$modelOne string Table
$modelTwo string Target table
$keys array Keys from first table
리턴 array

getModelClass() 공개 정적인 메소드

Get information about Model classes
public static getModelClass ( string $model ) : string
$model string
리턴 string

getRelations() 공개 정적인 메소드

Get relations
public static getRelations ( string $modelOne, string $modelTwo ) : array | false
$modelOne string
$modelTwo string
리턴 array | false

setRelation() 공개 정적인 메소드

Setup relation between two models
public static setRelation ( string $modelOne, string $keyOne, string $modelTwo, string $keyTwo ) : void
$modelOne string
$keyOne string
$modelTwo string
$keyTwo string
리턴 void

setRelations() 공개 정적인 메소드

Setup multi relations
public static setRelations ( string $modelOne, string $modelTwo, array $relations ) : void
$modelOne string
$modelTwo string
$relations array
리턴 void

프로퍼티 상세

$modelClassMap 보호되어 있는 정적으로 프로퍼티

[ 'Pages' => '\Application\Pages\Table', 'Users' => '\Application\Users\Table', ]
protected static array $modelClassMap
리턴 array

$relations 보호되어 있는 정적으로 프로퍼티

[ 'Model1:Model2' => ['Model1'=>'foreignKey', 'Model2'=>'primaryKey'], 'Pages:Users' => ['Pages'=>'userId', 'Users'=>'id'], 'PagesTags:Pages' => ['PagesTags'=>'pageId', 'Pages'=>'id'], 'PagesTags:Tags' => ['PagesTags'=>'tagId', 'Tags'=>'id'], 'Pages:Tags' => ['PagesTags'], ]
protected static array $relations
리턴 array