Re: Matching *exact* string?

From: Date: Sun, 31 Oct 2004 11:40:45 +0000
Subject: Re: Matching *exact* string?
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-200763@lists.php.net to get a copy of this message
Daniel Schierbeck wrote:
Nick Wilson wrote:
hello all I am foreach()ing through an array of ip addresses in a 'ban script' and have the following php code: foreach($ips as $ip) { preg_match("/$ip/", $_SERVER[REMOTE_ADDR]); $ban = TRUE; } This is great, but if 127.0.0 were in the ban list (for example) it would still produce a ban as it partially matches. How can I alter the above so that only *exact* matches are banned? Much thanks!
I'd rather go with something like this: $banned_ips = array('123.123.123.123', '321.321.321.321'); // Banned IPs if (in_array($_SERVER['REMOTE_ADDR'], $banned_ips)) {
    die('Dude, you\'re banned!');
} But if I were you I'd choose something more advanced. And yes, I'm aware of the fact that 321.321.321.321 isn't a valid IP...
-- Daniel Schierbeck Help spread Firefox (www.getfirefox.com): http://www.spreadfirefox.com/?q=user/register&r=6584

« previous php.general (#200763) next »