Re: variable type - conversion/checking

From: Date: Sat, 16 Mar 2013 02:12:32 +0000
Subject: Re: variable type - conversion/checking
References: 1 2 3 4 5 6 7 8 9 10 11 12 13  Groups: php.general 
Request: Send a blank email to php-general+get-320601@lists.php.net to get a copy of this message
On Mar 15, 2013 9:54 PM, "Sebastian Krebs" <krebs.seb@gmail.com> wrote: > > 2013/3/16 Andrew Ballard <aballard@gmail.com> >> >> I suppose one could try something like this: >> >> if (is_string($val) && $val === (string)(int)$val) .... >> >> If $val is an integer masquerading as a string, it should be identical to >> the original string when cast back to a string, shouldn't it? (I can't try >> it right now.) > > > It is semantically equivalent to > > $val == (int) $val > > and as far as I remember (I didn't read everything completely) this were mentioned. I didn't read, whether or not, it was accepted as solution ;) > Not quite. That method will massage both values to the same type for the comparison. Whoever shot it down said they both go to int. If that's the case, if ($val == (int)$val) is more like saying if ((int)$val === (int)$val) What I suggested converts the string to an int, the resulting int back to a string, then does a type-specific comparison to the original string value. Andrew

« previous php.general (#320601) next »