こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在5社経験している、14年目エンジニアです。
この記事では、 PHPでオブジェクトかどうかを判定できるis_object関数について
- is_object関数とは
- is_object関数を使ったサンプルプログラム
と、丁寧に解説していきます。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows11 |
---|---|
PHPのバージョン | 8.2.4 |
XAMPPのバージョン | 8.2.4 |
PHPを動かすためにXAMPPを使っています。
XAMPPのインストールは、下の記事をご参考ください。
is_object関数とは
is_object関数とは、引数に与えた値がオブジェクトかどうかを判定し結果をboolで返す関数です。
引数の値がオブジェクトであればtrue、それ以外はfalseを返します。
使い方サンプルは以下になります。
1 2 |
$sample = new DateTime(); $result = is_object($sample); |
引数に与えているsampleはDateTimeクラスのオブジェクトなので、変数resultには「true」が返されます。
では、次の章で実際に使ってみます。
is_object関数を解説するプログラムの概要
is_object関数を解説するプログラムでは
- 整数
- 文字列
- 配列
- stdClassオブジェクト
の4パターンでis_object関数関数で判定し、結果を表示させます。
phpプログラムは
C:\xampp\htdocs
配下に、【sample.php】というファイル名で格納しています。
PHPサンプルプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
<?php print('■is_object関数サンプル<br >'); print('・整数の場合<br >'); $numeric_int = 67; if(is_object($numeric_int)) { print($numeric_int.'はオブジェクト型である<br />'); } else { print($numeric_int.'はオブジェクト型でない<br />'); } print('<br />'); print('・文字列の場合<br >'); $str = 'abc'; if(is_object($str)) { print($str.'はオブジェクト型である<br />'); } else { print($str.'はオブジェクト型でない<br />'); } print('<br />'); print('・配列の場合<br >'); $array = [1, 2, 3]; if(is_object($array)) { print_r('<pre>'); print_r($array); print_r('</pre>'); print('はオブジェクト型である<br />'); } else { print_r('<pre>'); print_r($array); print_r('</pre>'); print('はオブジェクト型でない<br />'); } print('<br />'); print('・stdClassオブジェクトの場合<br >'); $stdClass = new stdClass(); if(is_object($stdClass)) { print_r('<pre>'); print_r($stdClass); print_r('</pre>'); print('はオブジェクト型である<br />'); } else { print_r('<pre>'); print_r($stdClass); print_r('</pre>'); print('はオブジェクト型でない<br />'); } print('<br />'); ?> |
実行結果
XAMPPを起動して、【http://localhost/sample.php】のURLにアクセスします。
XAMPPでPHPの動かし方については、こちらの記事をご参考ください。
オブジェクトの判定ができていることが確認できました!
まとめ:is_object関数を使ってみよう!
以上がis_object関数についての解説でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント