PHP에서는 사용자 입력이 유효한 숫자인지 확인하는 것이 일반적인 요구 사항입니다. 특히 양식 제출을 처리 할 때 사용자가 입력 한 내용이 숫자인지 확인하는 것이 매우 중요합니다. PHP는 입력 데이터를 확인하는 데 도움이되는 두 가지 유용한 기능 을 제공합니다.
IS_NUMERIC ()는 변수가 숫자인지 숫자 문자열인지 확인하는 PHP 내장 기능입니다. 변수가 숫자 또는 숫자 문자열 인 경우 함수는 true를 반환하고 변수가 숫자 문자열이 아닌 경우 false .
<?php
$var = "123.45";
if (is_numeric($var)) {
echo "$var 유효한 숫자입니다";
} else {
echo "$var 不유효한 숫자입니다";
}
?>
문자열 "123.45" 는 유효한 숫자로 간주되므로 위의 코드는 유효한 숫자로 123.45를 출력합니다.
IS_NAN () 은 변수가 "숫자가 아님"유형인지 확인하는 데 사용되는 함수입니다. 일반적으로 is_nan ()은 숫자 계산이 0으로 나누는 것과 같은 유효하지 않은 숫자를 반환하는지 확인하는 데 사용됩니다. is_nan ()는 숫자 유형에서만 작동 할 수 있으므로 문자열 또는 다른 유형의 경우 is_nan ()이 false를 반환합니다.
<?php
$var = acos(8); // acos함수의 매개 변수 범위는 다음과 같습니다-1도착하다1,범위를 벗어나게됩니다NaN
if (is_nan($var)) {
echo "나오십시오NaN";
} else {
echo "结果유효한 숫자입니다";
}
?>
이 예에서, ACOS (8) 의 결과는 NAN이므로 출력은 NAN이 됩니다.
실제 개발에서 사용자는 빈 문자열, 문자, 특수 문자 등과 같은 다양한 불법 데이터를 입력 할 수 있습니다. 입력이 유효한지 확인하기 위해 IS_NUMERIC ()를 사용하여 입력이 숫자인지 확인하고 IS_NAN ()을 사용하여 입력이 유효하지 않은 숫자 (NAN)가되지 않도록합니다. 사용자가 숫자를 입력하고 NAN으로 계산되지 않으면 입력이 유효한 숫자라고 생각할 수 있습니다.
<?php
// 사용자 입력을 얻으십시오
$userInput = $_POST['user_input']; // 사용자가 입력 한 데이터가 통과한다고 가정합니다POST방법 제출
// 입력이 유효한 숫자인지 확인하십시오
if (is_numeric($userInput) && !is_nan($userInput)) {
echo "输入유효한 숫자입니다";
} else {
echo "잘못된 입력,유효한 번호를 제공하십시오";
}
?>
이 예에서 먼저 IS_NUMERIC ()을 사용하여 입력이 숫자인지 확인하십시오. 숫자 인 경우 IS_NAN ()을 사용하여 입력이 유효한 숫자인지 확인하십시오. 이를 통해 입력이 모두 숫자이며 유효하지 않은 "NAN"값이 아닙니다.
PHP에서 IS_NUMERIC () 및 IS_NAN () 은 두 가지 매우 유용한 기능입니다. IS_NUMERIC ()은 입력이 유효한 숫자인지 확인하는 반면, IS_NAN ()은 당사가 처리 한 숫자가 잘못된 NAN 값이 아닌지 확인합니다. 이 두 기능을 결합함으로써 사용자의 입력을보다 완전히 검증하고 유효하지 않은 데이터를 피할 수 있습니다.