Re: 0.0.0.0 & iplong()

From: Date: Mon, 04 Jun 2012 17:33:53 +0000
Subject: Re: 0.0.0.0 & iplong()
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-318148@lists.php.net to get a copy of this message
On Mon, Jun 4, 2012 at 6:54 PM, jas <jason.gerfen@gmail.com> wrote: > Not sure if this is a bug or not... > > I have run into an error when performing a conditional using iplong() and > the ~ bitwise operator > > $ip = '0.0.0.0'; > $mask = '24'; > > $end = (ip2long($ip) || (~ip2long($mask))) + 1; > > PHP Fatal error:  Unsupported operand types > > I even tried to typecast the mask to (int) > The error is probably not where you suspect it to be. ip2long will return false for ip2long($mask), because $mask is not a valid IP address. The ~ operator is not supported for false. - Matijn

« previous php.general (#318148) next »