mmerian / doctrine-timestamp Goto Github PK
View Code? Open in Web Editor NEWImplementation of a timestamp type for the Doctrine DBAL
Implementation of a timestamp type for the Doctrine DBAL
--
Some methods are partially commented, a part of the file is tab indented.
Fatal error: Call to undefined method Doctrine\DBAL\Platforms\MySqlPlatform::getIntegerTypeDeclaration() in /var/www/my-project/vendor/mmerian/doctrine-timestamp/lib/DoctrineTimestamp/DBAL/Types/Timestamp.php on line 34
After a bit of investigation, the easier way is to replace line 34 by:
return self::TIMESTAMP;
Currently, if the input DateTime is neither a null or a DateTime, the convertToDatabaseValue method will proceed, returning the value untouched, wich will lead to unexpected behaviour.
When a problem like this occurs, the convertToDatabaseValue method must throw a ConversionException to prevent Doctrine from trying to stringify and insert the faulty value.
Currently, the type only supports DateTime input value, and will hydrate dates as DateTime objects
I'll provide a PR once my others are accepted/rejected to avoid conflicts.
While the use of integer type makes perfect sense, most databases supports a TIMESTAMP field type, intended to store such dates.
Of course, directly handling this in the library will run into the problem of handling multiple platforms.
However, there's an undocumented trick in doctrine which makes it use TIMESTAMP types when the field is a Version. I'll attach a PR using this trick.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.