用户名和密码的Oxwall只允许使用英文字母(例如用户名markjones)我需要oxwall登录/加入/注册以接受其他语言中的字母/字符,例如BG/RU保加利亚语和俄语),例如西里尔文字母(保加利亚语键盘)(шгпхз),例如希腊字母表是(ΨΣπ),例如阿拉伯语是(فضج)。所以我试图解释的是,在oxwall上,使用EN(英语)只需要允许其他语言中的字符和字母(用于注册/登录和注册)即可正常工作。Php密码和用户名模式验证模式
oxwall当前验证PHP是 -
<?php
class UTIL_Validator
{
const PASSWORD_MIN_LENGTH = 4;
const PASSWORD_MAX_LENGTH = 128;
const USER_NAME_PATTERN = '/^[\w]{1,32}$/';
const EMAIL_PATTERN = '/^([\w\-\.\+\%]*[\w])@((?:[A-Za-z0-9\-]+\.)+[A-Za-z]{2,})$/';
const URL_PATTERN = '/^(http(s)?:\/\/)?((\d+\.\d+\.\d+\.\d+)|(([\w-]+\.)+([a-z,A-Z][\w-]*)))(:[1-9][0-9]*)?(\/?([\w-.\,\/:%[email protected]&*=~]+[\w- \,.\/?:%[email protected]&=*|]*)?)?(#(.*))?$/';
const INT_PATTERN = '/^[-+]?[0-9]+$/';
const FLOAT_PATTERN = '/^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/';
const ALPHA_NUMERIC_PATTERN = '/^[A-Za-z0-9]+$/';
public static function isEmailValid($value)
{
$pattern = self::EMAIL_PATTERN;
if (!preg_match($pattern, $value)) {
return false;
}
return true;
}
public static function isUrlValid($value)
{
$pattern = self::URL_PATTERN;
if (!preg_match($pattern, $value)) {
return false;
}
return true;
}
public static function isIntValid($value)
{
if (!preg_match(self::INT_PATTERN, $value)) {
return false;
}
return true;
}
public static function isFloatValid($value)
{
if (!preg_match(self::FLOAT_PATTERN, $value)) {
return false;
}
return true;
}
public static function isAlphaNumericValid($value)
{
$pattern = self::ALPHA_NUMERIC_PATTERN;
if (!preg_match($pattern, $value)) {
return false;
}
return true;
}
public static function isUserNameValid($value)
{
$pattern = self::USER_NAME_PATTERN;
if (!preg_match($pattern, $value)) {
return false;
}
return true;
}
public static function isDateValid($month, $day, $year)
{
if (!checkdate($month, $day, $year)) {
return false;
}
return true;
}
public static function isCaptchaValid($value)
{
if ($value === null) {
return false;
}
require_once OW_DIR_LIB . 'securimage/securimage.php';
$img = new Securimage();
if (!$img->check($value)) {
return false;
}
return true;
}
}
?>
您的电子邮件验证将拒绝许多有效的电子邮件地址。 – 1615903