Php 检查变量是否包含名称和来自姓氏的至少一个数字

Php 检查变量是否包含名称和来自姓氏的至少一个数字,php,validation,Php,Validation,我想检查此输入中的名字后是否至少插入了一个数字 因此,如果用户输入'joe',它将不会验证,但'joe d'或'joe doe'将通过 如何做到这一点 $nome = $this->coalesce($form['nome']); if (strlen($nome) > 0) $this->setValue('nome', strtoupper($nome)); else $this->addError('nome', 'Invalid name!');

我想检查此输入中的名字后是否至少插入了一个数字

因此,如果用户输入'joe',它将不会验证,但'joe d'或'joe doe'将通过

如何做到这一点

$nome = $this->coalesce($form['nome']);
if (strlen($nome) > 0)
    $this->setValue('nome', strtoupper($nome));
else
    $this->addError('nome', 'Invalid name!');

类似于以下内容的内容可以做到这一点:

if(!preg_match('/[a-z]+\s+[a-z]+/i', $nome)) {
    $this->addError('nome', 'Invalid name!');
}

这将验证由字母字符串、空格和另一个字母字符串组成的名称。

您可以使用正则表达式执行此操作:

if( preg_match( '/\w+ \w+/', $name)) {
    echo "Validation passes!";
} else { 
    echo "Invalid input";
}
您可以将正则表达式更改为
'/[A-Za-z]+[A-Za-z]+/'
,因为
\w
将不仅仅匹配字母字符(它包括数字和下划线)