[PHP]変数の型を調べる

php_program_top

この記事には広告を含む場合があります。

記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

変数型の調べ方

phpでは変数の型はシステムが状況に合わせて設定するものです。ただプログラマーは変数がどの型であるかを意識しながらプログラムを組まないと思わぬ不具合に遭遇してしまうため注意しましょう

 

gettype

phpには変数の型を判定するためのgettype関数があります。

サンプルプログラム

<?php

$sample_int = 1234;
$sample_str = 'test';

echo '変数「$sample_int」の変数型は、' . gettype($sample_int) . 'です' . PHP_EOL;
echo '変数「$sample_str」の変数型は、' . gettype($sample_str) . 'です' . PHP_EOL;

サンプルの出力結果

[root@hostname]$ php varcheck1.php 
変数「$sample_int」の変数型は、integerです
変数「$sample_str」の変数型は、stringです

 

is_*

phpには数字であるかを判定するis_int関数やtrue/falseを判定するis_bool関数など、特定の型であるかを判定する関数があります。

サンプルプログラム

<?php

$sample_int = 1234;
$sample_str = 'test';

//is_int関数は配列かどうかを判定します
if(is_int($sample_int)) {
  echo '変数「$sample_int」は整数型です' . PHP_EOL;
} else {
  echo '変数「$sample_int」は整数型ではありません' . PHP_EOL;
}

if(is_int($sample_str)) {
  echo '変数「$sample_str」は整数型です' . PHP_EOL;
} else {
  echo '変数「$sample_str」は整数型ではありません' . PHP_EOL;
}

//is_string()関数は文字列かどうかを判定します。
if(is_string($sample_int)) {
  echo '変数「$sample_int」は文字列です' . PHP_EOL;
} else {
  echo '変数「$sample_int」は文字列ではありません' . PHP_EOL;
}

if (is_string($sample_str)) {
  echo '変数「$sample_str」は文字列です' . PHP_EOL;
} else {
  echo '変数「$sample_str」は文字列ではありません' . PHP_EOL;
}

サンプルの出力結果

[root@hostname]$ php varcheck2.php 
変数「$sample_int」は整数型です
変数「$sample_str」は整数型ではありません
変数「$sample_int」は文字列ではありません
変数「$sample_str」は文字列です

変数「$sample_int」が整数型で、変数「$sample_str」が文字列であることがわかります。

 

is_*関数の一覧

is_array([変数]) 変数が配列(array)かどうかを判定する
is_bool([変数]) 変数が論理型(boolean)かどうかを判定する
is_float([変数]) 変数が浮動小数(float)かどうかを判定する
is_int([変数]) 変数が整数型(int)かどうかを判定する
is_null([変数]) 変数がnullかどうかを判定する
is_numeric([変数]) 変数が数字または数字に変換できる文字列かどうかを判定する
is_object([変数]) 変数がオブジェクトかどうかを判定する
is_resource([変数]) 変数がリソースかどうかを判定する
is_scalar([変数]) 変数がスカラかどうかを判定する
is_string([変数]) 変数が文字列(string)かどうかを判定する

 

 

ウェブプログラミングについては下記の本も参考になるので、スキルアップにお役立てください。

created by Rinker
徳丸 浩(著)
ページ数: 688ページ
出版社:SBクリエイティブ
発売日:2018/06/21

出典:amazon