set_charset('utf8'); } } /** * Liefert ein assoziatives Array des Datensatzes mit der übergebenen ID * * @param int $id * @return array */ final public static function getItem($id) { $sql = 'SELECT * FROM ' . static::TBL_NAME . ' WHERE ' . static::PRIMARY_KEY . ' = ' . $id . ';'; $data = self::query($sql); return (!is_array($data) || empty($data)) ? array() : current($data); } /** * Liefert ein mehrdimensionales, assoziatives Array mit allen Datensätzen, die zum Filter passen * als Schlüssel der ersten Dimension dient der Wert des Primär-Schlüssels der Datenbank-Tabelle * Legt alle Daten in self::$data ab * * @see self::query() * @see self::$data * * @return array */ final public static function getIndex() { $sql = 'SELECT * FROM ' . static::TBL_NAME . ' WHERE ' . static::$filter . ' ' . static::ORDER_BY . ';'; self::$data = self::query($sql); return self::$data; } /** * Liefert ein mehrdimensionales, assoziatives Array mit allen Datensätzen, die zum SQL-Query passen * als Schlüssel der ersten Dimension dient der Wert des Primär-Schlüssels der Datenbank-Tabelle * * @param string $sql * @return array */ final protected static function query($sql) { self::getInstance(); $result = self::$db->query($sql); $data = array(); while ($tmpData = $result->fetch_assoc()) { $data[$tmpData[static::PRIMARY_KEY]] = $tmpData; } return $data; } }