用戶名和密碼的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