ホームページ > バックエンド開発 > PHPの問題 > PHPは文字列が数値かどうかを判断します

PHPは文字列が数値かどうかを判断します

(*-*)浩
リリース: 2023-02-24 15:08:01
オリジナル
21799 人が閲覧しました

PHPは文字列が数値かどうかを判断します

is_numeric — 変数が数字であるか数値文字であるかを検出します (推奨学習: 初心者からマスターまでの PHP プログラミング )

<?php
$tests = array(
    "31", 
    1380, 
    "1e4", 
    "not numeric", 
    array(), 
    9.1
);

foreach ($tests as $element) {
    if (is_numeric($element)) {
        echo "&#39;{$element}&#39; is numeric", PHP_EOL;
    } else {
        echo "&#39;{$element}&#39; is NOT numeric", PHP_EOL;
    }
}
?>
ログイン後にコピー

プログラム実行結果:

&#39;31&#39; is numeric
&#39;1380&#39; is numeric
&#39;1e4&#39; is numeric
&#39;not numeric&#39; is NOT numeric
&#39;Array&#39; is NOT numeric
&#39;9.1&#39; is numeric
ログイン後にコピー

文字列1e4も数値として判定されます。

is_numeric 関数は、10 進数だけでなく 16 進数もサポートします。したがって、使用中の QQ 番号などの純粋な自然数を検証する場合は、 intval() 整数関数と連携する必要があります。

<?php
    $id = 0xff33669f;
    if (is_numeric($id)) 
    echo $id, &#39;符合要求。&#39;;//output 4281558687符合要求。
    else 
    echo $id, &#39;不符合要求。&#39;;
?>
ログイン後にコピー

整数を決定する必要がある場合は、is_int() 関数を使用して、一部の文字列が有効な数値と見なされる状況を回避できます。

is_numeric は変数が数値か数値列かを判定できますが、判定範囲が広すぎます。整数、小数、指数表現、および 16 進数値はすべて判定に合格します。普段IDを決める場合、これを使うのは少々不適切です。

今日、新しい判定関数 ctype_digital を発見しました。これは、is_numeric よりも優れた、整数のみを判定できます。その他の関数には、16 進整数を決定する ctype_xdigital、文字を決定する ctype_alpha などがあります。

以上がPHPは文字列が数値かどうかを判断しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート