skillup

技術ブログ

JavaScript PHP

switch(true)イディオム

投稿日:

switch文は通常、文字や数字で分岐をさせることが多いですが、実は条件式を入れることも可能です。

私の場合、正規表現を動的に変えたいケースがあり、検索したところ似たケースがありました。

http://kuroeveryday.blogspot.jp/2015/07/Match-Switch.html

上記は正規表現を使っていますが、要はswitch(true)を使えば、caseにはif文に相当する処理を書くことができます。

PHPでもあるようで頻繁には使いませんが、まれに必要なケースがでてくるのかなあと思います。

その他参考リンク

PHPでのswitch(true)の使い方
http://blog.livedoor.jp/petaweb/archives/1481905.html

switch(true)に関して
http://qiita.com/t_uda/items/1969e09a970d71e4cfd6

どうやらあまり推奨される使い方ではないようですね・・。

-JavaScript, PHP

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

cakePHPでのCSVダウンロード

cakePHPにてCSVのダウンロードなんぞを。 以前このエントリーでCSVダウンロードに関しては取り扱ったのですが、 ボタンを押す ファイルダイアログが開く パスを選ぶ 意図したデータを正常にダウン …

no image

cakePHPでの多対多について

cakePHPで多対多のリレーションを使う機会があったので、その時のメモなどを。 多対多を説明するときには例によってブログの投稿(Item)とタグ(Tag)の関係が一番わかりやすいですね。 Conte …

no image

apacheで複数インスタンスの起動

前回のphpenvがらみの引き続きですが、php5.6と7を共存させ、なおかつWEBアプリで動かす方法を調べたところapacheの複数インスタンスがであれば可能だとのこと。 早速調べなんとかできました …

no image

phpQueryを使ったスクレイピングに関して

以前、スクレイピングに関してはこのエントリーでも紹介したとおり、phpに標準で入っているDOMDocumentを使う方法が一番楽です。 ところがデータによってはXMLで解析するため目的とする要素を取得 …

no image

ロケール情報について

本日、csvファイルを読み込む処理を行っていたんですが、コンソールからコマンドを打つと化けずに、ウェブ上で見ると化けるという現象が発生。 csv,プログラムともに文字コードがutf8で統一していること …