読者です 読者をやめる 読者になる 読者になる

カメ飼ってる新米エンジニアの覚書き

とにかくカメがかわいい

PHPの配列の値比較にin_arrayが便利

最近はフロントながらサーバーサイドも触れるというおいしい位置にいるため、 リンクの非表示などでもcontrollerでちゃんと出し分けする意識がつきました。

逆にviewだけ触っていた今までがどうなのって感じですが・・

フロントだとテンプレートにロジックを書きがちな現場です。他のところはどうなのかなぁ。

phpでレビューを受けて改善されたものを以下にメモ。

hogehogeという配列のid2と3に該当するものを除きたい場合。こう書いていました。

foreach ($hogehoge as $key => $hoge)
        {
            if ($hoge["id"] == 2 || $hoge["id"] == 3)
            {
                unset($hogehoge[$key]);
            }
        }
        return $hogehoge;

それがレビューを受けてこうなる。

foreach ($hogehoge as $key => $hoge)
    {
      if (in_array($hogehoge["id"], [2, 3]))
      {
          unset($hogehoge[$key]);
       }
    }
return $hogehoge;

配列にある値をチェックするin_array 比較が配列で書けて便利。比較値の増減にも対応が簡単。

PHP: in_array - Manual

おお!と思ったのですが、レビューからさらに変更し、controllerの処理を消してmodelで取得のidを絞りました。