PHP 클래스 Pix_Table, pixframework

파일 보기 프로젝트 열기: pixnet/pixframework 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
$_aliases _aliases 建立 relation 的 aliases
$_cache_groups 記錄哪些東西要 Cache
$_cache_rows
$_columns _columns 這個 Table 有哪些 column
$_force_master
$_hooks _hooks 這個 Table 有哪些 hook
$_indexes array _indexes 該 Table 用到的 index
$_log_groups 記錄哪些東西要 Log
$_name string _name 這個 Table 在 Db 上面的名稱是什麼
$_primary string | array _primary Primary key, 可以是
$_relations _relations 這個 Table 有哪些 relation
$_resultSetClass string _resultSetClass 這個 Table 的 ResultSet class
$_rowClass string _rowClass 這個 Table 的 Row class
$_save_memory
$_throw_incorrect_string_exception
$_verify

보호된 프로퍼티들

프로퍼티 타입 설명
$_cache
$_class
$_db
$_default_db @codeCoverageIgnoreEnd
$_filters
$_helper_managers
$_index_datas
$_query_comment
$_static_helper_managers
$_table_cache
$_table_cache_prefix
$_table_pool

공개 메소드들

메소드 설명
__call ( $name, $args )
__callStatic ( $name, $args )
__construct ( )
addFilter ( $filter, $funcname = '' )
addIndex ( string $name, array $columns, string $type = 'index' ) : void addIndex 增加一組 INDEX
addResultSetHelper ( string $helper, array $methods = null, array $options = [] ) : void addResultSetHelper add ResultSet Helper to this Table
addRowHelper ( string $helper, array $methods = null, array $options = [] ) : void addRowHelper add Row Helper to this Table
addStaticResultSetHelper ( string $helper, array $methods = null, array $options = [] ) : void addStaticResultSetHelper add ResuletSet Helper to all Table
addStaticRowHelper ( string $helper, array $methods = null, array $options = [] ) : void addStaticRowHelper add Row Helper to all Table
addStaticTableHelper ( string $helper, array $methods = null, array $options = [] ) : void addStaticTableHelper add Table Helper to all Table
addTableHelper ( string $helper, array $methods = null, array $options = [] ) : void addTableHelper add Table Helper to this Table
bulkInsert ( array $keys, array $values_list, array $options = [] ) : void bulk insert
cacheRow ( array $primary_values, array $data ) : void cacheRow
checkTable ( ) : array checkTable 檢查 Table 與資料庫上的不同
createRow ( Pix_Table_Row | null $belong_row = null ) : Pix_Table_Row createRow 新增加一個未被存入資料庫內的 row
createTable ( ) : void createTable 在資料庫上建立新 Table
debug ( $word ) @codeCoverageIgnoreStart
disableCache ( mixed $group ) : void disableCache 關閉 Pix_Table 的 cache 功能
disableLog ( mixed $group ) : void disableLog 停用某個 LOG
disableTableCache ( ) : void disableTableCache 停用 Table Cache
dropTable ( ) : void dropTable 刪除這個 table
enableCache ( mixed $group ) : void enableCache 開啟 Pix_Table 的 cache 功能
enableLog ( mixed $group ) : void enableLog 啟用某個 LOG
enableTableCache ( $cache_prefix = '' ) : void enableTableCache 啟用 Table Cache
find ( mixed $primary_value ) : Pix_Table_Row | null find 透過 $primary_value 這個 pk 取得一筆 row
findUniqueKey ( array $columns ) : string | null findUniqueKey 尋找這要用哪一個 Unique Key
find_by ( $columns, $values )
getCache ( )
getCacheStatus ( string $group ) : void getCacheStatus 取得某個 group 的 cache 功能是開是關
getClass ( ) : void getClass 回傳這個 table 的 class name
getDb ( ) : Pix_Table_Db 取得該 Table 專用的 Pix_Table_Db
getDefaultDb ( ) : void getDefaultDb 取得預設的 Db
getFilters ( )
getForceMaster ( ) : boolean getForceMaster 取得是否要強制從 master 抓資料的設定
getHelperManager ( string $type ) : Pix_Helper_Manager getHelperManager get Pix_Helper_Manager from this table
getIndexColumns ( $name )
getIndexes ( ) : array getIndexes get Table index list
getLogStatus ( mixed $group ) : void getLogStatus 取得某個 log 的狀態
getLongQueryTime ( ) getLongQueryTime 取得 Slow query 的設定秒數
getPrimaryColumns ( )
getQueryComment ( ) : null | string getQueryComment 取得要在 db 下 query 時所加上的註解
getRelationForeignKeys ( string $relation ) : array getRelationForeignKeys 取得某個 relation 的 relation name
getRelationForeignTable ( string $relation ) : Pix_Table getRelationForeignTable 取得 relation 對應的 table
getRowFromCache ( array $primary_values ) : false getRowFromCache 從 Cache 中取得 Row
getStaticHelperManager ( string $type ) : Pix_Helper_Manager getStaticHelperManager get Pix_Helper_Manager from static Pix_Table
getTable ( $table = null )
getTableName ( ) : string getTableName 取得 Table 名稱
init ( ) : void init 第一次 load table 進來要做的事,替代掉 __contstruct
insert ( mixed $data ) : void insert 新增一筆資料進資料庫(立刻會存進資料庫)
isEditableKey ( string $key ) : boolean isEditableKey 是否是可以被修改的 Row Key, Ex: column, relation .
isNumbericColumn ( string $column ) : boolean isNumbericColumn 回傳現在這個 column 是不是只有數字
is_a ( Pix_Table_Row $object, string $table ) : boolean is_a $object 是否是 $table 類型的 Row
newEmptyTable ( $table_name = null ) : Pix_Table declare a new empty Pix Table
search ( mixed $where ) : Pix_Table_ResultSet search 搜尋特定條件
setCache ( $cache )
setClassName ( $name )
setDb ( $db )
setDefaultDb ( Pix_Table_Db $db ) : void setDefaultDb 指定 Pix_Table 預設的 db
setForceMaster ( mixed $enable ) : void setForceMaster 設定要不要強制從 master 抓資料。
setLongQueryTime ( integer $second = 1 ) : void setLongQueryTime 當 Query 時間超過這個時間時,會噴出 Warning log
setQueryComment ( null/string $comment = null ) : void setQueryComment 在 Db 下 Query 時,自動加上註解

보호된 메소드들

메소드 설명
_getDb ( ) : Pix_Table_Db | mysqli | ... _getDb 給 model 開發者用來回傳

메소드 상세

__call() 공개 메소드

public __call ( $name, $args )

__callStatic() 공개 정적인 메소드

public static __callStatic ( $name, $args )

__construct() 공개 메소드

public __construct ( )

_getDb() 보호된 메소드

_getDb 給 model 開發者用來回傳
protected _getDb ( ) : Pix_Table_Db | mysqli | ...
리턴 Pix_Table_Db | mysqli | ...

addFilter() 공개 메소드

public addFilter ( $filter, $funcname = '' )

addIndex() 공개 정적인 메소드

addIndex 增加一組 INDEX
public static addIndex ( string $name, array $columns, string $type = 'index' ) : void
$name string 增加 INDEX 名稱
$columns array 哪個 column
$type string index|unique
리턴 void

addResultSetHelper() 공개 정적인 메소드

addResultSetHelper add ResultSet Helper to this Table
public static addResultSetHelper ( string $helper, array $methods = null, array $options = [] ) : void
$helper string
$methods array
$options array
리턴 void

addRowHelper() 공개 정적인 메소드

addRowHelper add Row Helper to this Table
public static addRowHelper ( string $helper, array $methods = null, array $options = [] ) : void
$helper string
$methods array
$options array
리턴 void

addStaticResultSetHelper() 공개 정적인 메소드

addStaticResultSetHelper add ResuletSet Helper to all Table
public static addStaticResultSetHelper ( string $helper, array $methods = null, array $options = [] ) : void
$helper string
$methods array
$options array
리턴 void

addStaticRowHelper() 공개 정적인 메소드

addStaticRowHelper add Row Helper to all Table
public static addStaticRowHelper ( string $helper, array $methods = null, array $options = [] ) : void
$helper string
$methods array
$options array
리턴 void

addStaticTableHelper() 공개 정적인 메소드

addStaticTableHelper add Table Helper to all Table
public static addStaticTableHelper ( string $helper, array $methods = null, array $options = [] ) : void
$helper string
$methods array
$options array
리턴 void

addTableHelper() 공개 정적인 메소드

addTableHelper add Table Helper to this Table
public static addTableHelper ( string $helper, array $methods = null, array $options = [] ) : void
$helper string
$methods array
$options array
리턴 void

bulkInsert() 공개 정적인 메소드

bulk insert
public static bulkInsert ( array $keys, array $values_list, array $options = [] ) : void
$keys array
$values_list array
$options array (optional)
리턴 void

cacheRow() 공개 메소드

cacheRow
public cacheRow ( array $primary_values, array $data ) : void
$primary_values array Primary values
$data array
리턴 void

checkTable() 공개 정적인 메소드

checkTable 檢查 Table 與資料庫上的不同
public static checkTable ( ) : array
리턴 array 不同點

createRow() 공개 정적인 메소드

createRow 新增加一個未被存入資料庫內的 row
public static createRow ( Pix_Table_Row | null $belong_row = null ) : Pix_Table_Row
$belong_row Pix_Table_Row | null 是從哪個 Row 被 create 出來的,Pix_Table 不會用到,但是先預留
리턴 Pix_Table_Row

createTable() 공개 정적인 메소드

createTable 在資料庫上建立新 Table
public static createTable ( ) : void
리턴 void

debug() 공개 정적인 메소드

@codeCoverageIgnoreStart
public static debug ( $word )

disableCache() 공개 정적인 메소드

disableCache 關閉 Pix_Table 的 cache 功能
public static disableCache ( mixed $group ) : void
$group mixed
리턴 void

disableLog() 공개 정적인 메소드

disableLog 停用某個 LOG
public static disableLog ( mixed $group ) : void
$group mixed
리턴 void

disableTableCache() 공개 메소드

disableTableCache 停用 Table Cache
public disableTableCache ( ) : void
리턴 void

dropTable() 공개 정적인 메소드

dropTable 刪除這個 table
public static dropTable ( ) : void
리턴 void

enableCache() 공개 정적인 메소드

enableCache 開啟 Pix_Table 的 cache 功能
public static enableCache ( mixed $group ) : void
$group mixed
리턴 void

enableLog() 공개 정적인 메소드

enableLog 啟用某個 LOG
public static enableLog ( mixed $group ) : void
$group mixed
리턴 void

enableTableCache() 공개 메소드

enableTableCache 啟用 Table Cache
public enableTableCache ( $cache_prefix = '' ) : void
리턴 void

find() 공개 정적인 메소드

find 透過 $primary_value 這個 pk 取得一筆 row
public static find ( mixed $primary_value ) : Pix_Table_Row | null
$primary_value mixed
리턴 Pix_Table_Row | null

findUniqueKey() 공개 정적인 메소드

findUniqueKey 尋找這要用哪一個 Unique Key
public static findUniqueKey ( array $columns ) : string | null
$columns array 有哪些 column
리턴 string | null 哪一組 index

find_by() 공개 정적인 메소드

public static find_by ( $columns, $values )

getCache() 공개 정적인 메소드

public static getCache ( )

getCacheStatus() 공개 정적인 메소드

getCacheStatus 取得某個 group 的 cache 功能是開是關
public static getCacheStatus ( string $group ) : void
$group string
리턴 void

getClass() 공개 메소드

getClass 回傳這個 table 的 class name
public getClass ( ) : void
리턴 void

getDb() 공개 정적인 메소드

取得該 Table 專用的 Pix_Table_Db
public static getDb ( ) : Pix_Table_Db
리턴 Pix_Table_Db db

getDefaultDb() 공개 정적인 메소드

getDefaultDb 取得預設的 Db
public static getDefaultDb ( ) : void
리턴 void

getFilters() 공개 메소드

public getFilters ( )

getForceMaster() 공개 정적인 메소드

getForceMaster 取得是否要強制從 master 抓資料的設定
public static getForceMaster ( ) : boolean
리턴 boolean

getHelperManager() 공개 정적인 메소드

getHelperManager get Pix_Helper_Manager from this table
public static getHelperManager ( string $type ) : Pix_Helper_Manager
$type string
리턴 Pix_Helper_Manager

getIndexColumns() 공개 정적인 메소드

public static getIndexColumns ( $name )

getIndexes() 공개 정적인 메소드

getIndexes get Table index list
public static getIndexes ( ) : array
리턴 array

getLogStatus() 공개 정적인 메소드

getLogStatus 取得某個 log 的狀態
public static getLogStatus ( mixed $group ) : void
$group mixed
리턴 void

getLongQueryTime() 공개 정적인 메소드

getLongQueryTime 取得 Slow query 的設定秒數
public static getLongQueryTime ( )

getPrimaryColumns() 공개 메소드

public getPrimaryColumns ( )

getQueryComment() 공개 정적인 메소드

getQueryComment 取得要在 db 下 query 時所加上的註解
public static getQueryComment ( ) : null | string
리턴 null | string

getRelationForeignKeys() 공개 정적인 메소드

getRelationForeignKeys 取得某個 relation 的 relation name
public static getRelationForeignKeys ( string $relation ) : array
$relation string relation 名稱
리턴 array relation 的 columns

getRelationForeignTable() 공개 정적인 메소드

getRelationForeignTable 取得 relation 對應的 table
public static getRelationForeignTable ( string $relation ) : Pix_Table
$relation string relation 名稱
리턴 Pix_Table 對應的 table

getRowFromCache() 공개 메소드

getRowFromCache 從 Cache 中取得 Row
public getRowFromCache ( array $primary_values ) : false
$primary_values array Primary values
리턴 false - 沒有 cache 到或不支援 cache, null - cache 到 null, Pix_Table_Row cache 到的 row

getStaticHelperManager() 공개 정적인 메소드

getStaticHelperManager get Pix_Helper_Manager from static Pix_Table
public static getStaticHelperManager ( string $type ) : Pix_Helper_Manager
$type string
리턴 Pix_Helper_Manager

getTable() 공개 정적인 메소드

public static getTable ( $table = null )

getTableName() 공개 정적인 메소드

getTableName 取得 Table 名稱
public static getTableName ( ) : string
리턴 string

init() 공개 메소드

init 第一次 load table 進來要做的事,替代掉 __contstruct
public init ( ) : void
리턴 void

insert() 공개 정적인 메소드

insert 新增一筆資料進資料庫(立刻會存進資料庫)
public static insert ( mixed $data ) : void
$data mixed
리턴 void

isEditableKey() 공개 정적인 메소드

..
public static isEditableKey ( string $key ) : boolean
$key string
리턴 boolean

isNumbericColumn() 공개 메소드

isNumbericColumn 回傳現在這個 column 是不是只有數字
public isNumbericColumn ( string $column ) : boolean
$column string column name
리턴 boolean

is_a() 공개 정적인 메소드

is_a $object 是否是 $table 類型的 Row
public static is_a ( Pix_Table_Row $object, string $table ) : boolean
$object Pix_Table_Row
$table string
리턴 boolean

newEmptyTable() 공개 정적인 메소드

declare a new empty Pix Table
public static newEmptyTable ( $table_name = null ) : Pix_Table
리턴 Pix_Table

setCache() 공개 정적인 메소드

public static setCache ( $cache )

setClassName() 공개 메소드

public setClassName ( $name )

setDb() 공개 정적인 메소드

public static setDb ( $db )

setDefaultDb() 공개 정적인 메소드

setDefaultDb 指定 Pix_Table 預設的 db
public static setDefaultDb ( Pix_Table_Db $db ) : void
$db Pix_Table_Db 用哪個 db
리턴 void

setForceMaster() 공개 정적인 메소드

setForceMaster 設定要不要強制從 master 抓資料。
public static setForceMaster ( mixed $enable ) : void
$enable mixed
리턴 void

setLongQueryTime() 공개 정적인 메소드

setLongQueryTime 當 Query 時間超過這個時間時,會噴出 Warning log
public static setLongQueryTime ( integer $second = 1 ) : void
$second integer
리턴 void

setQueryComment() 공개 정적인 메소드

setQueryComment 在 Db 下 Query 時,自動加上註解
public static setQueryComment ( null/string $comment = null ) : void
$comment null/string
리턴 void

프로퍼티 상세

$_aliases 공개적으로 프로퍼티

_aliases 建立 relation 的 aliases
public $_aliases

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

protected static $_cache

$_cache_groups 공개적으로 정적으로 프로퍼티

記錄哪些東西要 Cache
public static $_cache_groups

$_cache_rows 공개적으로 프로퍼티

public $_cache_rows

$_class 보호되어 있는 프로퍼티

protected $_class

$_columns 공개적으로 프로퍼티

_columns 這個 Table 有哪些 column
public $_columns

$_db 보호되어 있는 프로퍼티

protected $_db

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

@codeCoverageIgnoreEnd
protected static $_default_db

$_filters 보호되어 있는 프로퍼티

protected $_filters

$_force_master 공개적으로 정적으로 프로퍼티

public static $_force_master

$_helper_managers 보호되어 있는 프로퍼티

protected $_helper_managers

$_hooks 공개적으로 프로퍼티

_hooks 這個 Table 有哪些 hook
public $_hooks

$_index_datas 보호되어 있는 프로퍼티

protected $_index_datas

$_indexes 공개적으로 프로퍼티

_indexes 該 Table 用到的 index
사용 중단: use Table->addIndex instead
public array $_indexes
리턴 array

$_log_groups 공개적으로 정적으로 프로퍼티

記錄哪些東西要 Log
public static $_log_groups

$_name 공개적으로 프로퍼티

_name 這個 Table 在 Db 上面的名稱是什麼
public string $_name
리턴 string

$_primary 공개적으로 프로퍼티

_primary Primary key, 可以是
public string|array $_primary
리턴 string | array

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

protected static $_query_comment

$_relations 공개적으로 프로퍼티

_relations 這個 Table 有哪些 relation
public $_relations

$_resultSetClass 공개적으로 프로퍼티

_resultSetClass 這個 Table 的 ResultSet class
public string $_resultSetClass
리턴 string

$_rowClass 공개적으로 프로퍼티

_rowClass 這個 Table 的 Row class
public string $_rowClass
리턴 string

$_save_memory 공개적으로 정적으로 프로퍼티

public static $_save_memory

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

protected static $_static_helper_managers

$_table_cache 보호되어 있는 프로퍼티

protected $_table_cache

$_table_cache_prefix 보호되어 있는 프로퍼티

protected $_table_cache_prefix

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

protected static $_table_pool

$_throw_incorrect_string_exception 공개적으로 정적으로 프로퍼티

public static $_throw_incorrect_string_exception

$_verify 공개적으로 정적으로 프로퍼티

public static $_verify