function test_extract_table() { $table = array(array('col1' => '11', 'col2' => '12'), array('col1' => '21', 'col2' => '22')); $entries = DBEntry::extract_table($table, 'table1'); $this->assertEquals(2, count($entries), "entries count"); $this->assertTrue($entries[0] instanceof DBEntry, "first element is a DBEntry"); $this->assertEquals('table1', $entries[0]->table, "entries table name"); $this->assertEquals(11, $entries[0]->values['col1'], "entry 0 col 1"); $this->assertEquals(12, $entries[0]->values['col2'], "entry 0 col 2"); }
public function select($options = NULL) { $table = $this->table; $q = "select * from {$table} {$options}"; if (self::$debug) { error_log(date('c') . "\n{$q}\n\n", 3, self::$debug); } $result = self::$db->query($q)->fetchAll(PDO::FETCH_ASSOC); $objects = array(); $records = DBEntry::extract_table($result, $this->table); foreach ($records as $r) { $obj = new $this->class(); $r->setProperties($obj); $objects[] = $obj; } return $objects; }