Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:86177 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 55513 invoked from network); 12 May 2015 19:27:12 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 12 May 2015 19:27:12 -0000 Authentication-Results: pb1.pair.com header.from=lester@lsces.co.uk; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=lester@lsces.co.uk; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain lsces.co.uk from 217.147.176.214 cause and error) X-PHP-List-Original-Sender: lester@lsces.co.uk X-Host-Fingerprint: 217.147.176.214 mail4-2.serversure.net Linux 2.6 Received: from [217.147.176.214] ([217.147.176.214:57908] helo=mail4.serversure.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 38/C2-41925-F0452555 for ; Tue, 12 May 2015 15:27:12 -0400 Received: (qmail 10441 invoked by uid 89); 12 May 2015 19:27:08 -0000 Received: by simscan 1.3.1 ppid: 10433, pid: 10438, t: 0.1643s scanners: attach: 1.3.1 clamav: 0.96/m:52/d:10677 Received: from unknown (HELO ?10.0.0.8?) (lester@rainbowdigitalmedia.org.uk@81.138.11.136) by mail4.serversure.net with ESMTPA; 12 May 2015 19:27:08 -0000 Message-ID: <5552540C.9000205@lsces.co.uk> Date: Tue, 12 May 2015 20:27:08 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: internals@lists.php.net References: In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] is_digits() and digits type From: lester@lsces.co.uk (Lester Caine) 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! -- 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