Web制作メモ -トップへ-

[PHP] 可変変数を使ってコードを少なくしよう

PHP2014.12.11 10:55

可変変数を使えば変数名に変数を使うことができます。これを使うと変数を機械的に処理できるようになります。

例えば、$f1から$f5という変数に内容があれば表示するという処理の場合、可変変数を使わなければ次のようになります。

可変変数を使わない例

if($f1){
    echo $f1;
}
if($f2){
    echo $f2;
}
if($f3){
    echo $f3;
}
if($f4){
    echo $f4;
}
if($f5){
    echo $f5;
}

このコードを可変変数を使って書くと以下のように書けます。

可変変数を使った場合

for($count=1; $count<6; $count++) {
    if(${"f".$count}){
        echo ${"f".$count};
    }
}

コードが短くなりました。さらに、今後いくら変数が増えてもfor文のカウント数を変えるだけで済むのでコードが増えません。

可変変数にするには、変数を{}で囲みます。

上記の例だと、${"f".$count}が可変変数です。{}で囲んだ中の変数は展開され、最終的に$f1から$f5までの変数が処理されます。