是否可以根据来自 mysql 数据库的值在 PHP 中创建动态变量?
我是说,
说我在 mysql 中有一个字段State
row['State']
当我使用从数据库中读取 php 中的值时,如果我得到一个类似的值Alabama
,我希望创建一个类似的变量$Alabama_count
,我将初始化为0
or 1
。
谢谢。
是否可以根据来自 mysql 数据库的值在 PHP 中创建动态变量?
我是说,
说我在 mysql 中有一个字段State
row['State']
当我使用从数据库中读取 php 中的值时,如果我得到一个类似的值Alabama
,我希望创建一个类似的变量$Alabama_count
,我将初始化为0
or 1
。
谢谢。
确实存在一个更简单的解决方案。您可以非常轻松地创建它,而不是创建名为 $Alabama_count 的东西:$count['Alabama']
,即$count[$row['State']]
。
$varname = $row['State'] . '_count';
$$varname = 0; // or 1
你可以做${$row['State']}
if $row['State']
is Alabama
it's the same as doing $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;
您可以使用 $ 符号两次将变量用于此变量:例如:
$variable = 'Some_text';
$$name = 123;
echo $Some_text;
//this will output 123
不确定这是否是您想要的,但请查看php 手册中的变量变量
您可以创建一个名为 ${$row['State'].'_count'} 的变量并设置其值。但是,我不确定这有多么可取。你不知道你会留下什么变量。