public function testConvertToDatabase() { $this->assertEquals('""', ValueConverter::convertToDatabase('')); $this->assertEquals('"test"', ValueConverter::convertToDatabase('test')); $this->assertEquals('"2015-01-02 03:04:05"', ValueConverter::convertToDatabase(new \DateTime('2015-01-02 03:04:05'))); $this->assertEquals('NULL', ValueConverter::convertToDatabase(null)); }
/** * @param AbstractEntity $entity * @return AbstractEntity * @throws \Edefine\Framework\Database\DatabaseException */ private function updateEntity(AbstractEntity $entity) { $updateParts = []; foreach ($entity->getMappedFieldsWithValues() as $field => $value) { $updateParts[] = sprintf('`%s` = %s', $field, ValueConverter::convertToDatabase($value)); } $result = $this->database->exec(sprintf('UPDATE `%s` SET %s WHERE `id` = %d', $entity->getTableName(), implode(', ', $updateParts), $entity->getId())); return $entity; }