Re: Numeric Type

From: Date: Wed, 03 Jun 2020 12:30:16 +0000
Subject: Re: Numeric Type
References: 1 2 3  Groups: php.internals 
Request: Send a blank email to internals+get-110351@lists.php.net to get a copy of this message
On 3 June 2020 09:50:23 BST, Deleu <deleugyn@gmail.com> wrote: > is_numeric has been with PHP for >so long that I don't think we would ever be able to have a >numeric >type-hint that doesn't align with it, which imho means we either have it or >we don't, a 3rd option where a possible type-hint that is inconsistent with >the function seems worse than not having it. I agree, but my conclusion is that the best answer is "don't have it" - I don't think the use cases are common enough to deserve a language feature rather than just using the existing function. >My point is that I don't look at the language validation to protect my code >against unexpected values and I can setup validation to deal with that. If it's not to protect against unexpected values, then what is it for? >What complicates things is that I want to avoid having a force-cast >which is not safe for my usage because I want to preserve null Yes, the combination of strict cast and nullable cast would sometimes be useful, although the syntax might get messy - (int?!)$foo looks horrible. Since we already have ?int though, this doesn't seem a strong reason to add ?numeric meaning almost the same thing. > while not having to disable strict_types It feels a bit like you want to "have your cake and eat it" here - if you want a loose check and aren't worried about a few unusual values getting through, why are you running in strict_types mode in the first place? Regards, -- Rowan Tommins [IMSoP]

« previous php.internals (#110351) next »