こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在5社経験している、12年目エンジニアです。
この記事では、 PHPで??(はてなマーク2つ)のNULL合体演算子について
- NULL合体演算子とは
- NULL合体演算子を使うときの注意点
- NULL合体演算子を使ったサンプルプログラム
と、丁寧に解説していきます。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows11 |
---|---|
PHPのバージョン | 8.2.4 |
XAMPPのバージョン | 8.2.4 |
PHPを動かすためにXAMPPを使っています。
XAMPPのインストールは、下の記事をご参考ください。
NULL合体演算子とは
??(はてなマーク2つ)のNULL合体演算子とは、演算子の左辺の値がNULLかどうか判定してNULLでなかった場合は左辺を、NULLであった場合は右辺の値を返す演算子です。
使い方サンプルは以下です。
1 2 |
$sample = null; $result = $sample ?? 'test'; |
上記の例だと、変数sampleはnullなのでresultには右辺の値の「test」が返されます。
NULL合体演算子を使うときの注意点
NULL合体演算子を使うときの注意点として、PHPのバージョンを確認する必要があるという点です。
NULL合体演算子はPHPのバージョン7で追加されました。
なのでバージョン7未満だと使うことができません。
もしうまく動作しない場合は、お使いのPHPのバージョンを確認してみてください。
バージョン7未満でNULL合体演算子のようにしたい場合は
1 2 |
$sample = null; $result = is_null($sample) ? 'test' : $sample; |
とis_null関数と三項演算子を組み合わせて使えば、同じ動作をすることができます。
それぞれについては、以下の解説記事をご参考ください。
では、次の章で実際に使ってみます。
NULL合体演算子を解説するプログラムの概要
NULL合体演算子を解説するプログラムでは、
- nullでない場合
- nullだった場合
の2パターンでNULL合体演算子を使って計算し、結果を表示させます。
phpプログラムは
C:\xampp\htdocs
配下に、【sample.php】というファイル名で格納しています。
PHPサンプルプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<?php print('■NULL合体演算子サンプル<br >'); print('・nullでない場合<br >'); $str1 = 'nullではない'; $result1 = $str1 ?? 'nullだった'; print($result1.'<br />'); print('<br />'); print('・nullだった場合<br >'); $str2 = null; $result2 = $str2 ?? 'nullだった'; print($result2.'<br />'); ?> |
実行結果
XAMPPを起動して、【http://localhost/sample.php】のURLにアクセスします。
XAMPPでPHPの動かし方については、こちらの記事をご参考ください。
与えた値がNULLかどうかで分岐ができていることが確認できました!
まとめ:NULL合体演算子を使ってみよう!
以上がNULL合体演算子についての解説でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント