PHP变量名包括变量名

PHP变量名包括变量名,php,variables,Php,Variables,我试图使用循环设置变量$upkeep_1、$upkeep_2等。 我有以下代码: $sql_result2 = mysql_query("SELECT * FROM houses_db", $db); while ($rs2 = mysql_fetch_array($sql_result2)) { $upkeep_{$rs2[type]} = (int) $rs2[upkeep]; } echo $upkeep_3 . "<br>"; $sql\u result2

我试图使用循环设置变量$upkeep_1、$upkeep_2等。 我有以下代码:

$sql_result2 = mysql_query("SELECT * FROM houses_db", $db); 
while ($rs2 = mysql_fetch_array($sql_result2)) {
   $upkeep_{$rs2[type]} = (int) $rs2[upkeep]; 
   }

echo $upkeep_3 . "<br>";
$sql\u result2=mysql\u查询(“SELECT*FROM houses\u db”,$db);
而($rs2=mysql\u fetch\u数组($sql\u result2)){
$upkeep{$rs2[type]}=(int)$rs2[upkeep];
}
echo$upkeep_3。“
”;
$rs2[type]是一个数字字段,从1开始,一直到8


尽管$rs[upkeep]为3000,但此代码没有输出任何内容。我做错了什么?

为什么不使用数组

$sql_result2 = mysql_query("SELECT * FROM houses_db", $db); 
while ($rs2 = mysql_fetch_array($sql_result2)) {
    $upkeep[$rs2['type']] = (int) $rs2['upkeep']; 
}

echo $upkeep[3] . "<br>";
$sql\u result2=mysql\u查询(“SELECT*FROM houses\u db”,$db);
而($rs2=mysql\u fetch\u数组($sql\u result2)){
$upkeep[$rs2['type']]=(int)$rs2['upkeep'];
}
echo$维护[3]。“
”;
您确定要执行此操作吗?你知道数组吗:)

无论如何,请尝试以下方法:

$sql_result2 = mysql_query("SELECT * FROM houses_db", $db); 
while ($rs2 = mysql_fetch_array($sql_result2)) {
   eval("$upkeep_".$rs2[type]." = (int) ".$rs2[upkeep].""); 
}

echo $upkeep_3 . "<br>";
$sql\u result2=mysql\u查询(“SELECT*FROM houses\u db”,$db);
而($rs2=mysql\u fetch\u数组($sql\u result2)){
评估(“$upkeep”.$rs2[type]。”=(int).$rs2[upkeep]。”);
}
echo$upkeep_3。“
”;
首先给变量起一个有意义的名字。你在about页面上描述了“OP要求/想要/需要什么”的问题。你的答案中没有这样的问题。