Re: Matching *exact* string?
| From: | Daniel Schierbeck | 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:-- Daniel Schierbeck Help spread Firefox (www.getfirefox.com): http://www.spreadfirefox.com/?q=user/register&r=6584hello 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...