1行if文ってどうしますか?

既存のソースをいじっているとこういうソース見ませんか?

if ($data === 'hogeo') return false;

もしくは

if ($data === 'hogeo') {
    return false;
}

あるあるですよね。

これってどっちで書いた方がいいのでしょう?
(勿論規約がある場合はそれに沿って書くべきです)

それぞれのメリットとデメリットをあげると

if ($data === 'hogeo') return false;

はtrueの場合に処理を追加することになった場合が大変ということ。

if ($data === 'hogeo') {
    $data['name'] = 'hogeo';
    return false;
}

って感じにすると修正箇所が3行増えますね。

if ($data === 'hogeo') {
    return false;
}

は同じような処理が多い場合に冗長になり可読性が下がります。


if ($name === 'hogeo') {
    return false;
}
if ($gender === 'male') {
    return false;
}
if ($pref === 'tokyo') {
    return false;
}

勿論他の方法で解決する方法はありますが・・・それは置いておいて。

どっちが良いかは適宜考えるようにしましょう。

コメント