현재 위치: > 최신 기사 목록> PHP IS_NAN은 수학 계산의 중간 결과를 판단합니다

PHP IS_NAN은 수학 계산의 중간 결과를 판단합니다

gitbox 2025-05-29

매일 PHP 개발, 특히 수학적 계산과 관련된 시나리오에서 프로그래머는 NAN (숫자가 아님)과 같은 특별한 가치를 만날 수 있습니다. NAN은 일반적으로 Infinity에서 무한대를 빼기, 음수의 제곱근을 취하는 등 불법 수학적 작업에서 발생합니다. NAN은 JavaScript와 같은 언어에서 더 일반적이며 NAN은 PHP에도 존재하며 IS_NAN () 기능에 의해 판단 될 수 있습니다.

NAN은 무엇입니까?

NAN은 IEEE 754 Floating Point Number 표준의 특별한 값으로 "숫자가 아님"을 나타냅니다. 일반적으로 일반적인 수치 비교 (예 : == 또는 === )로 직접 식별되지 않으므로 특수 기능을 사용하여 판단해야합니다.

IS_NAN () 함수 사용

PHP에서 IS_NAN () 함수는 변수가 NAN인지 확인하는 데 사용됩니다. 구문은 다음과 같습니다.

 bool is_nan ( float $num )

이 함수는 플로팅 포인트 매개 변수를 수신하며,이 값은 NAN 인 경우 true 를 반환합니다. 그렇지 않으면 false .

전형적인 예

다음은 IS_NAN () 의 실제 사용을 보여주는 몇 가지 예입니다.

 <?php

// 불법 수학적 작업:무한대 마이너스 무한대
$a = log(0);  // -INF
$b = log(0);  // -INF
$c = $a - $b; // 결과는입니다 NaN

if (is_nan($c)) {
    echo "나오십시오 NaN";
} else {
    echo "결과는 아닙니다 NaN";
}
?>

이 예에서 Log (0)는 음의 무한대 (-inf)를 반환하고, 두 개의 음의 무한대 뺄셈의 결과는 명확한 숫자가 아니므로 PHP는 NAN을 반환합니다. 이 결과는 is_nan ()을 사용하여 성공적으로 판단 할 수 있습니다.

주목해야 할 것

  1. IS_NAN ()은 문자열 또는 정수가 "불법 값"인지 여부를 감지하는 데 사용되지 않으며 부동 소수점 번호에만 적용됩니다.

  2. 실제 비즈니스에서 NAN의 출현은 종종 특정 수학 논리에 문제가 있음을 의미하며 프로그램은 적시에 캡처하고 처리되어야합니다.

  3. IS_NAN ()을 사용하는 경우 매개 변수가 부동 소수점 번호인지 확인하십시오. 그렇지 않으면 예상 결과가 반환되지 않을 수 있습니다.

응용 프로그램 시나리오 : 인터페이스 계산 결과 확인

두 숫자를 받고 비율을 계산하기위한 API를 개발한다고 가정 해 봅시다.

 <?php

function calculate_ratio($a, $b) {
    if ($b == 0) {
        return NAN;
    }
    return $a / $b;
}

$result = calculate_ratio(10, 0);

if (is_nan($result)) {
    echo "잘못된 계산 결과,매개 변수 입력을 확인하십시오。";
} else {
    echo "비율은입니다:$result";
}
?>

위의 코드에서 Divisor가 0 인 경우 NAN을 적극적으로 반환하고 IS_NAN ()을 사용하여 불법 값인지 확인합니다. 이 접근법은 일부 수치 컴퓨팅 인터페이스에서 매우 실용적이므로 잘못된 결과를 직접 반환하거나 런타임 오류를 유발하지 않을 수 있습니다.

예제와 관련된 URL 상황

예를 들어 인터페이스를 통해 계산 요청을 제출한다고 가정합니다.

 $apiUrl = 'https://gitbox.net/api/calculate';

CURL 또는 FILE_GET_CONTENTS ()를 사용하여 gitbox.net 도메인 이름으로 서비스에 요청을 보내고 IS_NAN ()을 사용하여 반환 결과를 판단하여 계산 로직의 신뢰성을 보장 할 수 있습니다.

요약

PHP는 수학적 계산에 선호되는 언어는 아니지만 부유 포인트 작업과 관련된 작업을 처리 할 때 NAN 값이 조용히 나타날 수 있습니다. IS_NAN () 함수의 도움으로 개발자는 이러한 잠재적 문제를 효과적으로 식별하여 코드의 견고성을 향상시킬 수 있습니다. IS_NAN () 을 이해하고 합리적으로 사용하는 것은 시스템의 수치 정확도를 보장하는 데 특히 중요합니다.