On Tue, May 12, 2015 at 1:27 PM, Lester Caine <les...@lsces.co.uk> wrote:
> On 12/05/15 19:55, Rowan Collins wrote: > > For instance, valid input for a 64-bit signed integer in a database > could include: > > - any PHP native integer (assuming nobody builds with 128-bit ints!) > > - any string consisting of all digits, such that when interpreted as an > integer the value won't exceed 2^64-1 > > - any string consisting of a '-' followed by digits, such that the > magnitude of the integer interpretation wouldn't exceed 2^64 > > - any PHP float with no fractional part, maybe capped to a magnitude > less than 2^53 for safety > > BUT > In INTEGER in a database is 32 bit and will remain 32 bit, just as > SMALLINT is 16 bit ... 64 bit is BIGINT and so the whole concept of > simply ignoring 32 bit and handling them instead as 64bit is wrong! > So type hints are broken before they start! > You should handle sanitizing data for you external storage specific to the external storage you're using and not expect the language to do it for you. > > -- > Lester Caine - G8HFL > ----------------------------- > Contact - http://lsces.co.uk/wiki/?page=contact > L.S.Caine Electronic Services - http://lsces.co.uk > EnquirySolve - http://enquirysolve.com/ > Model Engineers Digital Workshop - http://medw.co.uk > Rainbow Digital Media - http://rainbowdigitalmedia.co.uk > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > >