用mysql查询结果定义php变量名

时间:2012-12-28 09:14:28

标签: php mysql

我想使用MySQL查询的结果为我的网站设置一些全局变量。最好以我认为的例子来说明。

#Query
$zone = mysql_query('SELECT zone_id, varname FROM `zone`');

if(!$zone) {
  ....
} else {
  while ($row = mysql_fetch_assoc($zone)) {
    #create a variable named varname, set it to zone_id
    $tempvar = $row['zone_id'];
    $tempvar.rename_variable_to($row['varname']);

    // OR

    $$row['varname'] = row['zone_id'];
  }
}

我认为我提出的解决方案都不起作用,但认为它们有助于澄清情况。

2 个答案:

答案 0 :(得分:2)

实际上,你的$$行['varname'] = row ['zone_id'];尝试应该工作,只有它是$ row ['zone_id'](你错过了$)。

但我强烈建议你不要这样做。它允许黑客通过将恶意内容放入数据库来超越您的PHP代码!

答案 1 :(得分:0)

  

我认为我提出的解决方案都不起作用,但认为他们会这样做   帮助澄清情况。

错误的假设,$$row['varname'] = $row['zone_id'];有效