変数の値で変数名を呼び出す可変変数

著者:杉浦

変数の値で変数名を呼び出す可変変数

PHP: 可変変数 – Manual
 phpには可変変数という機能がついています。これは変数名が可変の変数という意味の言葉です。具体的に何をするかというと、次の画像の様な動作です。
 
 可変変数によって式の評価結果などを用いて変数名を動的に変更できます。他言語でも似たようなことを実現する機能はままありますが、ここまで自由な振る舞いはちょっと珍しい印象です。可変変数を雑に扱うとIDEで追いかけることが難しかったり、不意に値が現れたりすることで混乱のもとになります。逆に混乱を抑えられる場合、有効です。例えばコーディング規約を作成し、規約に従う方法です。
 多くのフレームワークや大規模なライブラリなどには可変変数の様なを利用して実現している機能があります。例えばLaravelのEloquentモデルは特定の関数名ならば特定の種類の動作をするという機能(クエリビルダ、アクセサ、ミューテタ)を備えており、これはこの可変変数を用いることで簡単に実現できます。フレームワークに備わった可変変数を用いた機能は漫然と使っていてはなかなか気づきません。公式ドキュメント、リファレンス、といった説明書に書かれた可変名に関する説明を読むことが重要になります。

  • この記事いいね! (0)

著者について

杉浦 administrator