第5章 組み込み関数 / 第4回 模擬試験

PHPの`is_xxxxx`系関数(型判定関数)に関する次の記述のうち、誤っているものはどれか。

`is_array()`は変数が配列かどうかを判定する。
`is_numeric()`は変数が数値または数値形式の文字列かを判定する。
`is_null()`は変数が`null`かどうかを判定する。
`is_string()`は変数が数値かどうかを判定する。 正解
解説
`is_string()`は、変数の型が「文字列(`string`)」かどうかを判定する関数です。「数値かどうかを判定する」という記述は誤りです(数値かどうかの判定には`is_numeric()`, `is_int()`, `is_float()`などを使います)。 他の選択肢が正しい理由は次の通りです。 ・`is_array()`は、変数が配列型かどうかを判定します。 ・`is_numeric()`は、変数が数値、または`"123"`や`"1.5e3"`のような数値として解釈できる形式の文字列かどうかを判定します。 ・`is_null()`は、変数の値が`null`かどうかを判定します。 例: ``` var_dump(is_string('100')); // true var_dump(is_string(100)); // false var_dump(is_numeric('100')); // true ``` (参照: 独習PHP 第4版 第5章 組み込み関数 5.6.3節 変数のデータ型を判定する p.254)