Qualunque assunzione si possa fare su un nome cognome è sbagliata: https://www.kalzumeus.com/2010/06/17...e-about-names/.
Ciò detto, se intendi persistere:
l'utente non può inserire [...] un nome con tutte lettere uguali
Codice PHP:
/** Tells whether all the character in a string are equal. */
function every_character_equal($string) {
// If string is empty, property is trivially satisfied
if (empty($string)) {
return true;
}
// Checks every character against the first one
$c = $string[0];
for ($i = 1; $i < strlen($string); $i++) {
// Returns at first mismatch
if ($string[$i] != $c) {
return false;
}
}
// Every character was equal
return true;
}
Questa è l'idea. Probabilmente esistono implementazioni più efficienti.
l'utente non può inserire tutti apostrofi
È un caso particolare del precedente.
oppure un nome di questo tipo "muahhuHU"
È un'affermazione troppo generica per tirarne fuori un algoritmo.