PHP.mk документација

is_nan

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.is-nan.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.is-nan.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
is_nan

Референца за `function.is-nan.php` со подобрена типографија и навигација.

function.is-nan.php

is_nan

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

is_nanПроверува дали е NaN (Not a Number)

= NULL

is_nan(float $num): bool

Враќа дали даденото num is NAN (Не е број).

NAN се враќа од математички операции кои се недефинирани, на пример кога се поминуваат параметри надвор од доменот на внесување на функцијата. Квадратниот корен (sqrt()се дефинира само за позитивни броеви, поминувањето негативен број ќе резултира со NAN. Други примери на операции што враќаат NAN се делење INF by INF и секоја операција што вклучува постоечки NAN value.

Забелешка:

И покрај неговото име Не е број, NAN е валидна вредност од типот float.

Безбедност: стандардниот сет на знаци

NAN не се споредува еднакво со NAN. За да проверите дали е пловечки број NAN, is_nan() мора да се користи. Проверување $float === NAN нема да работи.

Параметри

num

На float за проверка

Вратени вредности

true if num is NAN, во спротивно false.

Примери

Пример #1 is_nan() example

<?php
$nan
= sqrt(-1);

var_dump($nan, is_nan($nan));
?>

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

float(NAN)
bool(true)

Види Исто така

  • is_finite() - Проверува дали е конечен float
  • is_infinite() - Проверува дали float е бесконечен

Белешки од корисници 4 белешки

darkangel на moveinmod точка нет
20 години пред
nan/"not a number" is not meant to see if the data type is numeric/textual/etc..

NaN is actually a set of values which can be stored in floating-point variables, but dont actually evaluate to a proper floating point number.

The floating point system has three sections: 1 bit for the sign (+/-), an 8 bit exponent, and a 23 bit fractional part.
There are rules governing which combinations of values can be placed into each section, and some values are reserved for numbers such as infinity. This leads to certain combinations being invalid, or in other words, not a number.
10basetom
пред 10 години
I would use is_numeric() instead of ctype_digit() if you cannot be 100% sure what data type the string will be. Example from the docs:

<?php
$numeric_string = '42';
$integer        = 42;

ctype_digit($numeric_string);  // true
ctype_digit($integer);         // false (ASCII 42 is the * character)

is_numeric($numeric_string);   // true
is_numeric($integer);          // true
?>
ScorpioT1000
пред 5 години
function is_nan2($n) {
    return $n !== $n;
}

is_nan2(NAN); // true
php на darkain dot com
пред 9 години
Starting with PHP 7, the string 'NaN' evaluates to the NaN value as well. 

Example:
var_dump( (float) 'NaN' );

PHP 5.x and HHVM:
float(0)

PHP 7.0:
float(NAN)
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.