문자열에서 특정 문자 만 허용합니다
문제
나는 문자열에 소문자 문자와 숫자 이외의 다른 것이 포함되어 있는지 확인하고 false를 반환하는지 확인하는 함수를 만들 수있는 방법을 찾고 있습니다. 인터넷에서 검색했지만 내가 찾을 수있는 것은 현재 PHP5에서 더 이상 사용되지 않는 함수를 사용해야하는 오래된 방법입니다.
해결책
function check_input( $text ) {
if( preg_match( "/[^a-z0-9]/", $text ) ) {
return false;
}
else {
return true;
}
}
다른 팁
Regex를 사용하십시오. 사용 preg_match ().
$matches = preg_match('/[^a-z0-9]/', $string);
그래서 지금 $matches
가지다 1
, 당신은 알고 있습니다 $string
나쁜 캐릭터가 포함되어 있습니다. 그렇지 않으면 $matches
~이다 0
, 그리고 $string
괜찮습니다.
일을 조금 혼합하려면
<?
$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
}
}
?>
그러나 Regex는 아마도 여기로가는 길 일 것입니다! =))
제휴하지 않습니다 StackOverflow