チーム開発や他人のコードを拝見した時などに条件分岐などで変数の前にビックリマーク(!)が付いていることを1度は見たことがあります。
プログラミング初学者の方は、最初に見た時これがどういった意図・役割で付けられているのか理解できなかったと思います。そこで本記事では、PHPで変数の前に使用されるビックリマーク(!)の意味と使い方について解説しています。
また、ビックリマークは他のプログラミング言語でも使用されるため、使い方を覚えておくと他のプログラミング言語を学習する際に役立ちます。
PHPの学習におすすめ書籍
独習PHP 第4版
メリット
- PHPの基本構文からクラス・データベース連携・セキュリティまで学べる
- PHPによるWebアプリ開発の基礎・基本テクニックを学べる
ポチップ
先輩くん
Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!
初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!
全プログラマー必見!
変数名/関数名にもう悩まない!
変数名/関数名にもう悩まない!
リーダブルコード
メリット
- 美しいコードが書けるが自然と書けるようになる
- 他の開発者が理解しやすいコードになる
著:Dustin Boswell, 著:Trevor Foucher, 解説:須藤 功平, 翻訳:角 征典
¥2,640 (2023/07/23 02:48時点 | Amazon調べ)
目次
ビックリマーク(!)の意味と使い方
結論からお話すると、このビックリマークは論理演算子の一つで否定を意味しています。否定を意味している?と理解しづらいですが、難しくはありません。ただ、trueとfalseのブール値を反対にするだけです。
例えば、以下のコードを見てみましょう。
<?php
if(false){
echo '処理が実行されました!';
}
?>
上記のコードは、if文の条件式の結果がtrueだったら「処理が実行されました!」を出力する簡単なプログラムです。しかし、if文の条件式がfalseのため永遠に処理が実行されることはありません。
そこでビックリマークを使ってみましょう。ビックリマークはtrueとfalseを入れ替えるため、上記のコードがfalse→trueに変わるはずです。
<?php
if(!false){
echo '処理が実行されました!';
}
?>
処理が実行されました!の文字列が表示されたのが確認できました。このように、条件式の結果がfalseの時だけに処理を実行させたい場合に否定を意味する論理演算子のビックリマークを使うことができます。