Mailinglisten-Archive |
* Beck, Mike <mike.beck_(at)_ibmiller.de> [2002-07-11 13:15:24]:
>
> [...]
>
> da fehlte noch was:
> if ( ereg( "^([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$",
> $str1, $regs ) ){
>
> das $ am ende des ausdrucks ist wichtig sonst würde er auch
> 123.45.6.7x
> als $str1 akzeptieren.
Dein Ausdruck wuerde aber auch folgendes akzeptieren:
359.982.2.0
0.1.2.4
Korrekt waere:
function addr_is_valid($val)
{
$tocheck = array();
$tocheck = explode('.', $val);
$size = sizeof($tocheck);
if ($size != 4 || $tocheck[0] <= 0)
return FALSE;
for ($i = 0; $i < $size; ++$i)
{
if (intval($tocheck[$i]) < 0 || intval($tocheck[$i]) > 255)
return FALSE;
}
return TRUE;
}
-Timo
php::bar PHP Wiki - Listenarchive