mysql データベースからの値に基づいて PHP で動的変数を作成することは可能ですか?
つまり、
mysqlにフィールドがあるとしますState
row['State']
データベースからを使用して php の値を読み取り、 のような値を取得した場合、 のようAlabama
に変数を作成し、 or$Alabama_count
に初期化します。0
1
ありがとう。
mysql データベースからの値に基づいて PHP で動的変数を作成することは可能ですか?
つまり、
mysqlにフィールドがあるとしますState
row['State']
データベースからを使用して php の値を読み取り、 のような値を取得した場合、 のようAlabama
に変数を作成し、 or$Alabama_count
に初期化します。0
1
ありがとう。
もっと簡単な解決策があります。$count['Alabama']
$ Alabama_countと呼ばれるものを作成する代わりに、これを非常に簡単に作成できます$count[$row['State']]
。
$varname = $row['State'] . '_count';
$$varname = 0; // or 1
するの${$row['State']}
と同じです。$row['State']
Alabama
$Alabama
同様に、以下に対しても同じことができます_count
:
${$row['State'] . '_count'} = 0; // $Alabama_count = 0;
${$row['State'] . '_count'}++; // $Alabama_count++; // $Alabama_count = 1;
このような可変変数を使用したいようですね。
$var_name = "{$row['State']}_count";
$$var_name = 1;
$ 記号を 2 回使用して、この変数の変数を使用できます。たとえば、次のようになります。
$variable = 'Some_text';
$$name = 123;
echo $Some_text;
//this will output 123
これがあなたが望むものかどうかはよくわかりませんが、phpマニュアルの変数変数を見てください
${$row['State'].'_count'} という名前の変数を作成し、その値を設定できます。ただし、これがどれほど望ましいかはわかりません。どのような変数が残るかわかりません。