PHP 클래스 rex_sql, redaxo

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

보호된 프로퍼티들

프로퍼티 타입 설명
$DBID Die Abfrage-Parameter
$counter anzahl der treffer
$debug
$fieldnames Werte von setRawValue
$lastRow Tabelle im ResultSet
$params Die Abfrage
$pdo PDO[]
$query pointer
$rawFieldnames Spalten im ResultSet
$rawValues Werte von setValue
$rows WHERE parameter array
$stmt PDOStatement
$table Wert der zuletzt gefetchten zeile
$tablenames
$values debug schalter
$whereParams WHERE Bediengung
$wherevar Tabelle setzen

공개 메소드들

메소드 설명
addGlobalCreateFields ( string $user = null )
addGlobalUpdateFields ( string $user = null )
checkDbConnection ( $host, $login, $pw, $dbname, $createDb = false ) Prueft die uebergebenen Zugangsdaten auf gueltigkeit und legt ggf. die Datenbank an.
current ( )
datetime ( integer | null $timestamp = null ) : string Returns a datetime string in sql datetime format (Y-m-d H:i:s) using the given timestamp or the current time if no timestamp (or null) is given.
delete ( ) Setzt eine Delete-Anweisung auf die angegebene Tabelle mit den angegebenen WHERE Parametern ab.
escape ( string $value ) : string Escaped den uebergeben Wert fuer den DB Query.
escapeIdentifier ( string $name ) : string Escapes and adds backsticks around.
execute ( array $params = [] ) Executes the prepared statement with the given input parameters.
factory ( integer $DBID = 1 ) : static Creates a rex_sql instance.
flushValues ( ) Stellt alle Values, die mit setValue() gesetzt wurden, zurueck.
getArray ( string $query = null, array $params = [], integer $fetchType = PDO::FETCH_ASSOC ) : array Laedt das komplette Resultset in ein Array und gibt dieses zurueck.
getArrayValue ( string $colName ) : array Returns the array value of a (json encoded) column.
getDBArray ( string $query = null, array $params = [], integer $fetchType = PDO::FETCH_ASSOC ) : array Laedt das komplette Resultset in ein Array und gibt dieses zurueck und wechselt die DBID falls vorhanden.
getDateTimeValue ( string $colName ) : integer | null Returns the unix timestamp of a datetime column.
getErrno ( ) Gibt die zuletzt aufgetretene Fehlernummer zurueck.
getError ( ) Gibt den zuletzt aufgetretene Fehler zurueck.
getFieldnames ( ) Gibt die Spaltennamen des ResultSets zurueck.
getFields ( ) Gibt die Anzahl der Felder/Spalten zurueck.
getLastId ( ) Gibt die letzte InsertId zurueck.
getQueryType ( string $qry ) : boolean | string Gibt den Typ der Abfrage (SQL) zurueck, oder false wenn die Abfrage keinen Typ enthaelt.
getRow ( $fetch_type = PDO::FETCH_ASSOC ) Gibt den Wert der aktuellen Zeile im ResultSet zurueck und bewegt den internen Zeiger auf die naechste Zeile.
getRows ( ) Gibt die Anzahl der Zeilen zurueck.
getServerVersion ( $DBID = 1 ) Gibt die Serverversion zurueck.
getTablenames ( )
getValue ( string $colName ) : mixed Returns the value of a column.
getWhere ( )
hasError ( ) Prueft, ob ein Fehler aufgetreten ist.
hasNext ( ) * Prueft ob das Resultset weitere Datensaetze enthaelt
hasValue ( string $feldname ) : boolean Prueft, ob eine Spalte im Resultset vorhanden ist.
hasValues ( ) : boolean Returns whether values are set inside this rex_sql object.
insert ( ) Setzt eine Insert-Anweisung auf die angegebene Tabelle mit den angegebenen Werten ab.
isNull ( $feldname ) Prueft, ob das Feld mit dem Namen $feldname Null ist.
key ( )
next ( )
prepareQuery ( string $qry ) : PDOStatement Prepares a PDOStatement.
replace ( ) Setzt eine Replace-Anweisung auf die angegebene Tabelle mit den angegebenen Werten ab.
reset ( ) Setzt den Cursor des Resultsets zurueck zum Anfang.
rewind ( )
select ( string $fields = '*' ) Setzt eine Select-Anweisung auf die angegebene Tabelle mit den WHERE Parametern ab.
setArrayValue ( string $colName, array $value ) Set the array value of a column (json encoded).
setDBQuery ( string $query, array $params = [] ) Setzt eine Abfrage (SQL) ab, wechselt die DBID falls vorhanden.
setDateTimeValue ( string $colName, integer | null $timestamp ) Sets the datetime value of a column.
setDebug ( boolean $debug = true ) Setzt Debugmodus an/aus.
setNewId ( string $field, integer $start_id ) : integer Setzt eine Spalte auf den naechst moeglich auto_increment Wert.
setQuery ( string $query, array $params = [] ) Executes the given sql-query.
setRawValue ( string $colName, string $value ) Sets the raw value of a column.
setTable ( string $table ) Setzt den Tabellennamen.
setValue ( string $colName, mixed $value ) Set the value of a column.
setValues ( array $valueArray ) Setzt ein Array von Werten zugleich.
setWhere ( string $where, array $whereParams = null ) Setzt die WHERE Bedienung der Abfrage.
showColumns ( string $table, integer $DBID = 1 ) : array Sucht Spalteninformationen der Tabelle $table der Datenbankverbindung $DBID.
showCreateTable ( string $table, integer $DBID = 1 ) : string Erstellt das CREATE TABLE Statement um die Tabelle $table der Datenbankverbindung $DBID zu erstellen.
showTables ( integer $DBID = 1, string $tablePrefix = null ) : array Sucht alle Tabellen der Datenbankverbindung $DBID.
update ( ) Setzt eine Update-Anweisung auf die angegebene Tabelle mit den angegebenen Werten und WHERE Parametern ab.
valid ( )

보호된 메소드들

메소드 설명
__construct ( $DBID = 1 )
buildPreparedValues ( ) Baut den SET bestandteil mit der verfuegbaren values zusammen und gibt diesen zurueck.
createConnection ( $host, $database, $login, $password, $persistent = false )
fetchValue ( $feldname )
getQueryDBID ( string $qry ) : boolean Gibt die DatenbankId der Abfrage (SQL) zurueck, oder false wenn die Abfrage keine DBID enthaelt.
isValueOf ( string $feld, string $prop ) : boolean Prueft den Wert einer Spalte der aktuellen Zeile ob ein Wert enthalten ist.
printError ( $qry, $params ) Gibt die letzte Fehlermeldung aus.
selectDB ( $DBID ) Stellt die Verbindung zur Datenbank her.
stripQueryDBID ( string &$qry ) : string Entfernt die DBID aus einer Abfrage (SQL) und gibt die DBID zurueck falls vorhanden, sonst false.

비공개 메소드들

메소드 설명
buildWhereArg ( array $arrFields, integer $level ) : string Concats the given array to a sql condition using bound parameters.
fetchMeta ( )
flush ( ) Stellt alle Werte auf den Ursprungszustand zurueck.

메소드 상세

__construct() 보호된 메소드

protected __construct ( $DBID = 1 )

addGlobalCreateFields() 공개 메소드

public addGlobalCreateFields ( string $user = null )
$user string the name of the user who updated the dataset. Defaults to the current user

addGlobalUpdateFields() 공개 메소드

public addGlobalUpdateFields ( string $user = null )
$user string the name of the user who created the dataset. Defaults to the current user

buildPreparedValues() 보호된 메소드

Baut den SET bestandteil mit der verfuegbaren values zusammen und gibt diesen zurueck.
또한 보기: setValue
protected buildPreparedValues ( )

checkDbConnection() 공개 정적인 메소드

Prueft die uebergebenen Zugangsdaten auf gueltigkeit und legt ggf. die Datenbank an.
public static checkDbConnection ( $host, $login, $pw, $dbname, $createDb = false )

createConnection() 보호된 정적인 메소드

protected static createConnection ( $host, $database, $login, $password, $persistent = false )

current() 공개 메소드

또한 보기: http://www.php.net/manual/en/iterator.current.php
public current ( )

datetime() 공개 정적인 메소드

Returns a datetime string in sql datetime format (Y-m-d H:i:s) using the given timestamp or the current time if no timestamp (or null) is given.
public static datetime ( integer | null $timestamp = null ) : string
$timestamp integer | null
리턴 string

delete() 공개 메소드

Setzt eine Delete-Anweisung auf die angegebene Tabelle mit den angegebenen WHERE Parametern ab.
public delete ( )

escape() 공개 메소드

Escaped den uebergeben Wert fuer den DB Query.
public escape ( string $value ) : string
$value string den zu escapenden Wert
리턴 string

escapeIdentifier() 공개 메소드

Escapes and adds backsticks around.
public escapeIdentifier ( string $name ) : string
$name string
리턴 string

execute() 공개 메소드

Executes the prepared statement with the given input parameters.
public execute ( array $params = [] )
$params array Array of input parameters

factory() 공개 정적인 메소드

Creates a rex_sql instance.
public static factory ( integer $DBID = 1 ) : static
$DBID integer
리턴 static Returns a rex_sql instance

fetchValue() 보호된 메소드

protected fetchValue ( $feldname )

flushValues() 공개 메소드

Stellt alle Values, die mit setValue() gesetzt wurden, zurueck.
public flushValues ( )

getArray() 공개 메소드

Laedt das komplette Resultset in ein Array und gibt dieses zurueck.
public getArray ( string $query = null, array $params = [], integer $fetchType = PDO::FETCH_ASSOC ) : array
$query string The sql-query
$params array An optional array of statement parameter
$fetchType integer
리턴 array

getArrayValue() 공개 메소드

Returns the array value of a (json encoded) column.
public getArrayValue ( string $colName ) : array
$colName string Name of the column
리턴 array

getDBArray() 공개 메소드

Laedt das komplette Resultset in ein Array und gibt dieses zurueck und wechselt die DBID falls vorhanden.
public getDBArray ( string $query = null, array $params = [], integer $fetchType = PDO::FETCH_ASSOC ) : array
$query string The sql-query
$params array An optional array of statement parameter
$fetchType integer
리턴 array

getDateTimeValue() 공개 메소드

Returns the unix timestamp of a datetime column.
public getDateTimeValue ( string $colName ) : integer | null
$colName string Name of the column
리턴 integer | null Unix timestamp or `null` if the column is `null` or not in sql datetime format

getErrno() 공개 메소드

Gibt die zuletzt aufgetretene Fehlernummer zurueck.
public getErrno ( )

getError() 공개 메소드

Gibt den zuletzt aufgetretene Fehler zurueck.
public getError ( )

getFieldnames() 공개 메소드

Gibt die Spaltennamen des ResultSets zurueck.
public getFieldnames ( )

getFields() 공개 메소드

Gibt die Anzahl der Felder/Spalten zurueck.
public getFields ( )

getLastId() 공개 메소드

Gibt die letzte InsertId zurueck.
public getLastId ( )

getQueryDBID() 보호된 정적인 메소드

Gibt die DatenbankId der Abfrage (SQL) zurueck, oder false wenn die Abfrage keine DBID enthaelt.
protected static getQueryDBID ( string $qry ) : boolean
$qry string
리턴 boolean

getQueryType() 공개 정적인 메소드

Moegliche Typen: - SELECT - SHOW - UPDATE - INSERT - DELETE - REPLACE - CREATE - CALL - OPTIMIZE
public static getQueryType ( string $qry ) : boolean | string
$qry string
리턴 boolean | string

getRow() 공개 메소드

Gibt den Wert der aktuellen Zeile im ResultSet zurueck und bewegt den internen Zeiger auf die naechste Zeile.
public getRow ( $fetch_type = PDO::FETCH_ASSOC )

getRows() 공개 메소드

Gibt die Anzahl der Zeilen zurueck.
public getRows ( )

getServerVersion() 공개 정적인 메소드

Die Versionsinformation ist erst bekannt, nachdem der rex_sql Konstruktor einmalig erfolgreich durchlaufen wurde.
public static getServerVersion ( $DBID = 1 )

getTablenames() 공개 메소드

public getTablenames ( )

getValue() 공개 메소드

Returns the value of a column.
public getValue ( string $colName ) : mixed
$colName string Name of the column
리턴 mixed

getWhere() 공개 메소드

public getWhere ( )

hasError() 공개 메소드

Prueft, ob ein Fehler aufgetreten ist.
public hasError ( )

hasNext() 공개 메소드

* Prueft ob das Resultset weitere Datensaetze enthaelt
public hasNext ( )

hasValue() 공개 메소드

Prueft, ob eine Spalte im Resultset vorhanden ist.
public hasValue ( string $feldname ) : boolean
$feldname string Name der Spalte
리턴 boolean

hasValues() 공개 메소드

Returns whether values are set inside this rex_sql object.
public hasValues ( ) : boolean
리턴 boolean True if value isset and not null, otherwise False

insert() 공개 메소드

Setzt eine Insert-Anweisung auf die angegebene Tabelle mit den angegebenen Werten ab.
public insert ( )

isNull() 공개 메소드

Falls das Feld nicht vorhanden ist, wird Null zurueckgegeben, sonst True/False
public isNull ( $feldname )

isValueOf() 보호된 메소드

Prueft den Wert einer Spalte der aktuellen Zeile ob ein Wert enthalten ist.
protected isValueOf ( string $feld, string $prop ) : boolean
$feld string Spaltenname des zu pruefenden Feldes
$prop string Wert, der enthalten sein soll
리턴 boolean

key() 공개 메소드

또한 보기: http://www.php.net/manual/en/iterator.key.php
public key ( )

next() 공개 메소드

또한 보기: http://www.php.net/manual/en/iterator.next.php
public next ( )

prepareQuery() 공개 메소드

Prepares a PDOStatement.
public prepareQuery ( string $qry ) : PDOStatement
$qry string A query string with placeholders
리턴 PDOStatement The prepared statement

printError() 보호된 메소드

Gibt die letzte Fehlermeldung aus.
protected printError ( $qry, $params )

replace() 공개 메소드

Setzt eine Replace-Anweisung auf die angegebene Tabelle mit den angegebenen Werten ab.
public replace ( )

reset() 공개 메소드

Setzt den Cursor des Resultsets zurueck zum Anfang.
public reset ( )

rewind() 공개 메소드

또한 보기: http://www.php.net/manual/en/iterator.rewind.php
public rewind ( )

select() 공개 메소드

Setzt eine Select-Anweisung auf die angegebene Tabelle mit den WHERE Parametern ab.
public select ( string $fields = '*' )
$fields string

selectDB() 보호된 메소드

Stellt die Verbindung zur Datenbank her.
protected selectDB ( $DBID )

setArrayValue() 공개 메소드

Set the array value of a column (json encoded).
public setArrayValue ( string $colName, array $value )
$colName string Name of the column
$value array The value

setDBQuery() 공개 메소드

Setzt eine Abfrage (SQL) ab, wechselt die DBID falls vorhanden.
public setDBQuery ( string $query, array $params = [] )
$query string The sql-query
$params array An optional array of statement parameter

setDateTimeValue() 공개 메소드

Sets the datetime value of a column.
public setDateTimeValue ( string $colName, integer | null $timestamp )
$colName string Name of the column
$timestamp integer | null Unix timestamp (if `null` is given, the current time is used)

setDebug() 공개 메소드

Setzt Debugmodus an/aus.
public setDebug ( boolean $debug = true )
$debug boolean Debug TRUE/FALSE

setNewId() 공개 메소드

Setzt eine Spalte auf den naechst moeglich auto_increment Wert.
public setNewId ( string $field, integer $start_id ) : integer
$field string Name der Spalte
$start_id integer
리턴 integer

setQuery() 공개 메소드

If parameters will be provided, a prepared statement will be executed. example 1: $sql->setQuery('SELECT * FROM mytable where id=:id, 'array('id' => 3)); NOTE: named-parameters/?-placeholders are not supported in LIMIT clause!
public setQuery ( string $query, array $params = [] )
$query string The sql-query
$params array An optional array of statement parameter

setRawValue() 공개 메소드

Sets the raw value of a column.
public setRawValue ( string $colName, string $value )
$colName string Name of the column
$value string The raw value

setTable() 공개 메소드

Setzt den Tabellennamen.
public setTable ( string $table )
$table string Tabellenname

setValue() 공개 메소드

Set the value of a column.
public setValue ( string $colName, mixed $value )
$colName string Name of the column
$value mixed The value

setValues() 공개 메소드

Setzt ein Array von Werten zugleich.
public setValues ( array $valueArray )
$valueArray array Ein Array von Werten

setWhere() 공개 메소드

example 1: $sql->setWhere(array('id' => 3, 'field' => '')); // results in id = 3 AND field = '' $sql->setWhere(array(array('id' => 3, 'field' => ''))); // results in id = 3 OR field = '' example 2: $sql->setWhere('myid = :id OR anotherfield = :field', array('id' => 3, 'field' => '')); example 3 (deprecated): $sql->setWhere('myid="35" OR abc="zdf"');
public setWhere ( string $where, array $whereParams = null )
$where string
$whereParams array

showColumns() 공개 정적인 메소드

Beispiel fuer den Rueckgabewert: Array ( [0] => Array ( [name] => pid [type] => int(11) [null] => NO [key] => PRI [default] => [extra] => auto_increment ) [1] => Array ( [name] => id [type] => int(11) [null] => NO [key] => MUL [default] => [extra] => ) )
public static showColumns ( string $table, integer $DBID = 1 ) : array
$table string Name der Tabelle
$DBID integer Id der Datenbankverbindung
리턴 array Ein mehrdimensionales Array das die Metadaten enthaelt

showCreateTable() 공개 정적인 메소드

Erstellt das CREATE TABLE Statement um die Tabelle $table der Datenbankverbindung $DBID zu erstellen.
public static showCreateTable ( string $table, integer $DBID = 1 ) : string
$table string Name der Tabelle
$DBID integer Id der Datenbankverbindung
리턴 string CREATE TABLE Sql-Statement zu erstsellung der Tabelle

showTables() 공개 정적인 메소드

Falls $tablePrefix gesetzt ist, werden nur dem Prefix entsprechende Tabellen gesucht.
public static showTables ( integer $DBID = 1, string $tablePrefix = null ) : array
$DBID integer Id der Datenbankverbindung
$tablePrefix string Zu suchender Tabellennamen-Prefix
리턴 array Ein Array von Tabellennamen

stripQueryDBID() 보호된 정적인 메소드

Entfernt die DBID aus einer Abfrage (SQL) und gibt die DBID zurueck falls vorhanden, sonst false.
protected static stripQueryDBID ( string &$qry ) : string
$qry string Abfrage
리턴 string

update() 공개 메소드

Setzt eine Update-Anweisung auf die angegebene Tabelle mit den angegebenen Werten und WHERE Parametern ab.
public update ( )

valid() 공개 메소드

또한 보기: http://www.php.net/manual/en/iterator.valid.php
public valid ( )

프로퍼티 상세

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

Die Abfrage-Parameter
protected $DBID

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

anzahl der treffer
protected $counter

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

protected $debug

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

Werte von setRawValue
protected $fieldnames

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

Tabelle im ResultSet
protected $lastRow

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

Die Abfrage
protected $params

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

protected static PDO[] $pdo
리턴 PDO[]

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

pointer
protected $query

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

Spalten im ResultSet
protected $rawFieldnames

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

Werte von setValue
protected $rawValues

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

WHERE parameter array
protected $rows

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

protected PDOStatement $stmt
리턴 PDOStatement

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

Wert der zuletzt gefetchten zeile
protected $table

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

protected $tablenames

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

debug schalter
protected $values

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

WHERE Bediengung
protected $whereParams

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

Tabelle setzen
protected $wherevar