Pregunta ¿Cómo validar para una cadena únicamente alfabética con espacios en PHP?


Sé que existe la función. ctype_alpha, aunque este volverá FALSE cuando la cadena contiene espacios (carácter de espacio en blanco).

¿Cómo permito los caracteres y espacios alfa, pero nada más?


5
2018-04-22 04:52


origen


Respuestas:


$is_alpha_space = ctype_alpha(str_replace(' ', '', $input)));

o

$is_alpha_space = preg_match('/^[a-z\s]*$/i', $input);

5
2018-04-22 05:24



if (preg_match("^/[a-zA-Z ]+$/", $input)) {
    // input matches
}

Manifestación: http://ideone.com/jp6Wi
Docs: http://php.net/manual/en/function.preg-match.php


2
2018-04-22 04:57



ctype_alpha(preg_replace('/\s/', '', $mystring))

La expresión interna devuelve la cadena sin espacios, y luego usas ctype_alpha`` como desees


0
2018-04-22 04:59



Eliminar los espacios es el camino a seguir, pero recuerda que ctype_alpha da como resultado un falso en una cadena vacía en estos días. Debajo del método que uso ...

function validateAlpha($valueToValidate, $spaceAllowed = false) {
    if ($spaceAllowed) {
        $valueToValidate = str_replace(' ', '', $valueToValidate);
    }
    if (strlen($valueToValidate) == 0) {
        return true;
    }
    return ctype_alpha($valueToValidate);
}

0
2017-08-10 08:25