Code: Select all
//This works
<?php
function check_alphanumeric_length($input_string, $length, $comparison_operator = ""){
$valid = 0; //initially the input assumed to be invalid
if(ereg("^[a-zA-Z0-9]*$", $input_string)){
echo "<br />"."check_alphanumeric_length: Input - $input_string is a alphanumeric";
if ($comparison_operator == ""){
if (strlen($input_string) <= $length){
$valid = 1;
echo "<br />"."check_alphanumeric_length: compared length:".strlen($input_string)."; comparison operator:<=; String is of valid length";
}
}else{
switch ($comparison_operator){
case "==":
if (strlen($input_string) == $length) $valid = 1;
break;
case "<":
if (strlen($input_string) < $length) $valid = 1;
break;
case ">":
if (strlen($input_string) > $length) $valid = 1;
break;
case ">=":
if (strlen($input_string) >= $length) $valid = 1;
break;
case "!=":
if (strlen($input_string) != $length) $valid = 1;
break;
}
echo "<br />"."check_alphanumeric_length: length:".strlen($input_string)."; compared length: $length; comparison operator:{$comparison_operator}";
}
}
echo "<br />"."check_alphanumeric_length: Validity of input string - $input_string:".$valid;
if ($valid){
return TRUE;
}else{
return FALSE;
}
}
?>Code: Select all
/*This does not work; Could any of you think of what is wrong here or could you think of any logic that could bring down the number of lines not like the above*/
<?php
function check_alphanumeric_length($input_string, $length, $comparison_operator = ""){
$valid = 0; //initially the input assumed to be invalid
if(ereg("^[a-zA-Z0-9]*$", $input_string)){
echo "<br />"."check_alphanumeric_length: Input - $input_string is a alphanumeric";
if ($comparison_operator == ""){
if (strlen($input_string) <= $length){
$valid = 1;
echo "<br />"."check_alphanumeric_length: compared length:".strlen($input_string)."; comparison operator:<=; String is of valid length";
}
}else{
//=======>this if block is where the problem arises<==========
if (strlen($input_string) $comparison_operator $length){
$valid = 1;
echo "<br />"."check_alphanumeric_length: compared length:".strlen($input_string)."; comparison operator:{$comparison_operator}; String is of valid length";
}
}
}
echo "<br />"."check_alphanumeric_length: Validity of input string - $input_string:".$valid;
if ($valid){
return TRUE;
}else{
return FALSE;
}
}
?>