时间:2021-07-01 10:21:17 帮助过:19人阅读
$value = '电商';
preg_match('/^[a-zA-Z\x{4e00}-\x{9fa5}][a-zA-Z_\-\x{4e00}-\x{9fa5}]*$/u',$value,$m)
在phalcon的控制器的方法中就不能验证,
public function registerAction()
{
if($this->request->isPost())
{
$myValidator = new MyValidator();
$errors = $myValidator->validateUsername($this->request->getPost('user_name'));
}
}
下面是调用的函数,
public function validateUsername($value)
{
$error = false;
if(!preg_match('/^[a-zA-Z\x{4e00}-\x{9fa5}][a-zA-Z_\-\x{4e00}-\x{9fa5}]*$/u',$value,$m))
{
$error = true;
print_r('world');
}
else
{
$pattern = '/[\x{4e00}-\x{9fa5}]/u';
$str1 = preg_replace($pattern, '', $value, -1, $count);
$length = strlen($str1) + $count * 2;
if (!($length >= 2 && $length <= 14))
{
$error = true;
}
}
if($error)
{
$return = ['user_name'=>'user name is invalid2.'];
}
else
{
$return = null;
}
return $return;
}
直接在php中验证可以验证
$value = '电商';
preg_match('/^[a-zA-Z\x{4e00}-\x{9fa5}][a-zA-Z_\-\x{4e00}-\x{9fa5}]*$/u',$value,$m)
在phalcon的控制器的方法中就不能验证,
public function registerAction()
{
if($this->request->isPost())
{
$myValidator = new MyValidator();
$errors = $myValidator->validateUsername($this->request->getPost('user_name'));
}
}
下面是调用的函数,
public function validateUsername($value)
{
$error = false;
if(!preg_match('/^[a-zA-Z\x{4e00}-\x{9fa5}][a-zA-Z_\-\x{4e00}-\x{9fa5}]*$/u',$value,$m))
{
$error = true;
print_r('world');
}
else
{
$pattern = '/[\x{4e00}-\x{9fa5}]/u';
$str1 = preg_replace($pattern, '', $value, -1, $count);
$length = strlen($str1) + $count * 2;
if (!($length >= 2 && $length <= 14))
{
$error = true;
}
}
if($error)
{
$return = ['user_name'=>'user name is invalid2.'];
}
else
{
$return = null;
}
return $return;
}
http://stackoverflow.com/questions/4923319/php-check-if-the-string-has...