PHP サーバサイド

if文とswitch文

現在、サーバエンジニアとしてPHPを触っている。僕ともう一人経験豊富なエンジニアがいた、彼と僕とではやはりコードの読みやすさが違う。その中の特徴の一つが条件分岐のやり方だ。

 

If文での条件分岐


例えば、値の中身に応じて処理を分けて、途中で値を返したりする場合はif文を使うだろう。

だけど、この記述は僕なりに2つの問題点がある。

ひとつ目は単純に見づらい。条件分岐をしている行(ifやelse if, elseの部分)の長さがマチマチなのでデザイン的に受け付けられない。

ふたつ目はもし、$wordsに新しい値を追加して、条件分岐を変更したい場合に最後のelseのところを"else if($words[$value] === 'banana')"みたいに変更しないといけない。これは面倒だ。

現場でも、僕はたまにこうした楽観的なコードを書く癖があるので、後から見直すと「オェーwww」みたいな感じになる。

 

Switch文


ちなみに、経験豊富な彼はこう書くだろう。

どこかで良いコードとは横に長いのではなく、縦に長いコードだと聞いた気がする。

単純な値の比較であれば、switch文の方がコードが読みやすい。

見やすいだけではなく、新しい条件も設定しやすい。

 

 

  • この記事を書いた人

シロー

Webシステムの開発のお仕事をさせて頂いております。 フリーランスの日常、Web開発に関する情報を発信しています。 趣味はゲーム、映画鑑賞、個人サービスを作ることです。

-PHP, サーバサイド
-

© 2021 Shiro's secret base