変数の続き
名前の記法ルール
①camelCase記法
先頭文字は小文字、その後、単語の区切りを大文字で表記。
$userName
②Pascal記法
先頭文字も含めて、全ての単語の頭文字を大文字で表記。
$UserName
③アンダースコア記法
全ての文字は小文字/大文字で表し、単語の区切りはアンダースコア(_)で表記(スネークケース記法ともいう)
$user_name
どれを使っても間違いではないが、変数、関数はcamelCase記法、定数は全て大文字のアンダースコア記法、クラスはPascal記法が一般的。
予約語
予約語はPHPで予め意味が決められた単語。
予約語の利用は定数、関数/クラスの名前では使用禁止。
変数は頭に「$」が付くので例外的に使えるが、混乱するので使わない方が良い。
識別子の命名は、変数や関数の名前を見るだけでおおよその内容を把握できるようにする。
可変変数
可変変数とは、「変数名を変数の値によって決める」事ができる変数の事。
「$」マークを2つ重ねることによって変数名を別の変数の値で動的に決定する。
<?php
$x = ‘title’;
$title = ‘今日は祝日で忙しいと思ったら雪で意外と暇’;
print $$x;
//結果: 今日は祝日で忙しいと思ったら雪で意外と暇
変数$xに「title」という値がセットされているので、可変変数「$$x」は「$x」の内容が評価された結果、「$title」と同じになる。
可変変数を利用することで、ある変数の値に応じて動的に変数名を付け替えられる。
どこまでが変数を表す変数であるかを明確にしたい場合、可変部分を{~}で括ることもできる。
$$x
//と
${$x}
//は同じ意味
この例だけでは可変変数の使い所が分かりにくいが、後々出てくるクラスや関数の呼び出しにも利用できる。
可変変数を利用することで呼び出すべきクラスや関数を動的に変更できる。