Added support for mb_strlen, as per bug report #4778
diff --git a/system/libraries/Validation.php b/system/libraries/Validation.php
index 20bb6bd..a463202 100644
--- a/system/libraries/Validation.php
+++ b/system/libraries/Validation.php
@@ -46,6 +46,12 @@
function CI_Validation()
{
$this->CI =& get_instance();
+
+ if (function_exists('mb_internal_encoding'))
+ {
+ mb_internal_encoding($this->CI->config->item('charset'));
+ }
+
log_message('debug', "Validation Class Initialized");
}
@@ -431,7 +437,12 @@
{
return FALSE;
}
-
+
+ if (function_exists('mb_strlen'))
+ {
+ return (mb_strlen($str) < $val) ? FALSE : TRUE;
+ }
+
return (strlen($str) < $val) ? FALSE : TRUE;
}
@@ -451,7 +462,12 @@
{
return FALSE;
}
-
+
+ if (function_exists('mb_strlen'))
+ {
+ return (mb_strlen($str) > $val) ? FALSE : TRUE;
+ }
+
return (strlen($str) > $val) ? FALSE : TRUE;
}
@@ -472,6 +488,11 @@
return FALSE;
}
+ if (function_exists('mb_strlen'))
+ {
+ return (mb_strlen($str) != $val) ? FALSE : TRUE;
+ }
+
return (strlen($str) != $val) ? FALSE : TRUE;
}