Domanda

Ho cercato un modo per creare una funzione per verificare se una stringa contiene qualcosa di diverso dalle lettere minuscole e dai numeri e se restituisce false. Ho cercato su Internet, ma tutto ciò che posso trovare sono vecchi metodi che richiedono di utilizzare funzioni che ora sono deprecate in PHP5.

È stato utile?

Soluzione

function check_input( $text ) {
  if( preg_match( "/[^a-z0-9]/", $text ) ) {
    return false;
  }
  else {
    return true;
  }
}

Altri suggerimenti

Usa una regex. Usa preg_match () .

$matches = preg_match('/[^a-z0-9]/', $string);

Quindi ora se $ corrisponde ha 1 , sai che $ string contiene caratteri errati. Altrimenti $ corrispondenze è 0 e $ string è OK.

Per mescolare un po 'le cose

<?
$input = "hello world 123!";
$digits = array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0");

if (ctype_alnum($input))
{
    if (ctype_lower(str_replace($digits, "", $input)))
    {
        // Input is only lowercase and digits
    }
}
?>

Ma probabilmente regex è la strada da percorrere qui! =)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top