开发者

Creating Variable Variables from MySQL Values

开发者 https://www.devze.com 2022-12-16 22:57 出处:网络
Is it possible to create a dynamic variable in PHP based on the value that comes from mysql database?

Is it possible to create a dynamic variable in PHP based on the value that comes from mysql database?

I mean,

say I have a field in mysql State

When I read the value in php using row['State'] from the database and if I get a value like Alabama, I want to have a variable created like $Alabama_count and I will 开发者_JAVA百科initialize to 0 or 1.

Thanks.


There does exist an easier solution. Instead of creating something called $Alabama_count, you could create this very easily: $count['Alabama'], i.e. $count[$row['State']].


$varname = $row['State'] . '_count';
$$varname = 0; // or 1


You can do ${$row['State']} if $row['State'] is Alabama it's the same as doing $Alabama.

Similarly you can do the same to _count:

${$row['State'] . '_count'} = 0; // $Alabama_count = 0;
${$row['State'] . '_count'}++; // $Alabama_count++; // $Alabama_count = 1;


Sounds like you want to use variable variables, something like this?

$var_name = "{$row['State']}_count";
$$var_name = 1;


Not really sure if this is what you want but take a look at Variable variables on the php manual


You could create a variable named ${$row['State'].'_count'} and set its value. I'm not sure how advisable this would be, however. You don't know what variables you will be left with.


You can use for this variables of variables using $ symbol twice: for example:

$variable = 'Some_text';
$$name = 123;
echo $Some_text;
//this will output 123
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号