![](https://cdn-ak-scissors.b.st-hatena.com/image/square/3c07c3391e8bf01704aacc2a3dcc0bba081f8f38/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUU3JTkyJUIwJUU1JUEyJTgzJUVGJUJDJTg4JUU2JTlDJUFDJUU3JTk1JUFBJUUzJTgwJTgxJUUzJTgzJTg2JUUzJTgyJUI5JUUzJTgzJTg4JUUzJTgwJTgxJUU5JTk2JThCJUU3JTk5JUJBJUUzJTgwJTgxJTIwZXRjLiVFRiVCQyU4OSVFMyU4MiU5MiVFNSU4OCVBNCVFNSU4OCVBNSVFMyU4MSU5NyVFMyU4MSVBNiVFNSU4OCU4NiVFNSVCMiU5MCVFMyU4MSU5OSVFMyU4MiU4QiVFMyU4MiU4OCVFMyU4MSU4NiVFMyU4MSVBQSVFNSVBRSU5RiVFOCVBMyU4NSVFMyU4MSVBRiVFOSU4MSVCRiVFMyU4MSU5MSVFMyU4MiU4QiZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9N2E1YTk3MzA2ZDJiZWY5ZGY1OTRkOGRkNzJkMzlhYTE%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTcxNiZ0eHQ9JTQwbV9ub3JpaSUyMGluJTIwJUU2JUEwJUFBJUU1JUJDJThGJUU0JUJDJTlBJUU3JUE0JUJFJUUzJTgyJUFBJUUzJTgzJUJDJUUzJTgzJTk3JUUzJTgzJUIzJUUzJTgzJUFEJUUzJTgyJUI4JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzImdHh0LWFsaWduPWxlZnQlMkN0b3Amcz01MjBhZjg3NjY4MzA0MTE3YWFjNjc5MWM2Yjk5NTEwYw%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Df259bdf726a0a9c992a985b27d985dca)
エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
環境(本番、テスト、開発、 etc.)を判別して分岐するような実装は避ける - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
環境(本番、テスト、開発、 etc.)を判別して分岐するような実装は避ける - Qiita
※コードはPHPですが、特定言語に依存する話ではありません。 ※ドメイン(FQDN)で分岐するのも同類です... ※コードはPHPですが、特定言語に依存する話ではありません。 ※ドメイン(FQDN)で分岐するのも同類です。 事例としては、本番だけ特定のアドレスにメールを飛ばしたいとか。 開発環境でだけログを出したいとか。 ですが、このような実装は避けるべきと考えます。 理由は端的にいうと「テストしにくいから」 上記上げたコード、どうやってテストしたらいいでしょうか? 本番でテストする? 本番環境でテスト、とは... テスト環境の APP_ENV を一時的に production にする ? 他の箇所にも影響しますよね... if (APP_ENV === 'production' or true) { と一時的無理やり通るようにする? どれも場当たり的な対応という印象が拭えません。 解決策 では、どうすればいいかというと 「その機能を使うか否かを判別するためのスイッチを環境変数として用意する」 例えば