形成修剪多个空格并仅采用字母表

时间:2012-02-26 19:08:56

标签: php forms

<label for="first_name">* First Name </label> 

<input type="text" name="first_name" maxlength="64" value=<?php echo formatPhone(clean_input($_POST['first_name']); ?>>

我有一个表格,我想输入名字。我希望字段只采用字母表(没有数字)。此外,当用户输入由多个空格分隔的John Doe之类的东西时,我希望它只用一个空格分隔两个单词。我不确定这是如何在php中完成的。

1 个答案:

答案 0 :(得分:0)

这将只传递ascii名称并正确分割输入:

if (preg_match("~^([A-Z][a-z]+\s*)+$~gm", $value)) {
    // valid

    $array_of_names = preg_split("~\s+~gm", $value);
    // or
    $normalized_name = preg_replace("~\s+~", " ", trim($value));
}