使用数组将PHP变量设置为foreach循环中的MySQL数据
我好像到处都找过这个 下面是我用来将变量设置为MySQL数据库中的一段数据的代码使用数组将PHP变量设置为foreach循环中的MySQL数据,php,mysql,variables,foreach,Php,Mysql,Variables,Foreach,我好像到处都找过这个 下面是我用来将变量设置为MySQL数据库中的一段数据的代码 $PartNo=mysql_result($result,$i,"PartNo"); 在哪里 $result = mysql_query("SELECT * FROM PriceList"); $i=0,每次我的while循环重新启动时,都会被添加到1中 PartNo是MySQL表中的一个字段名,也是要将数据库中的数据设置为的变量名 PriceList是我的数据库名 我想遍历所有字段名(数组中有它们),并为
$PartNo=mysql_result($result,$i,"PartNo");
在哪里
$result = mysql_query("SELECT * FROM PriceList");
$i=0
,每次我的while循环重新启动时,都会被添加到1中PartNo是MySQL表中的一个字段名,也是要将数据库中的数据设置为的变量名
PriceList是我的数据库名 我想遍历所有字段名(数组中有它们),并为该数据设置具有相同名称的变量。像这样:
$PartNo=mysql_result($result,$i,"PartNo");
$Group=mysql_result($result,$i,"Group");
$OnHand=mysql_result($result,$i,"OnHand");
$QOO=mysql_result($result,$i,"QOO");
$Description=mysql_result($result,$i,"Desc");
$Cost=mysql_result($result,$i,"Cost");
但是使用foreach循环,因此它没有那么多代码。我曾经想过这样的事情,但是不管我怎么做它都不会执行(parse_str、eval、exec等等) 我需要“
$$X
”进行计算,因此在第一次迭代中,它将更改为$PartNo=,然后将$PartNo
设置为数据库中第一行的任何数据。这就是这部分的内容:mysql\u result($result$i,“PartNo”)
如果我重复它:
foreach ($nDatabaseVars as $X) {
echo "$$X=mysql_result($result,$i,'$X')";
}
我可以让它准确地说出我需要执行的内容($PartNo=mysql\u result($result,$I,“PartNo”)),但实际上并没有得到变量集。您正在将一个包含
“$X”
的字符串传递给mysql\u result
,而不是传递给您的列名。删除单引号:
$$X=mysql_result($result, $i, $X);
传奇,谢谢你们。我找错地方了。
$$X=mysql_result($result, $i, $X);
$$X=mysql_result($result,$i,'$X'); // these single quotes around $X avoid your actual string to be used.
$$X=mysql_result($result,$i,"$X");