我很好奇如何创建PHP变量,并动态地填充一个特定行的值,而不必逐个分配值?谷歌不返回什么我正在寻找,而是教我如何插入变量到sql查询…
给一些背景,我有一个40列的表,我不想40次分配
$variable1 = $row['column1']
,而是将column1中的值自动分配给一个名为$column1的变量,并使用相应的值。当然,应该对该行的每个值执行此操作。
该怎么做呢?有安全问题吗?
您可以使用extract
函数:
extract($row);
你可以使用$column1
作为变量
, 小心:
- 根据您的场景创建40个变量
- 如果您的列名与代码中的任何其他变量名相同,则会造成混淆
这是另一种方法
如果从mysql返回的数据是多维数组,那么:
foreach ($data as $item) {
foreach ($item as $key => $value) {
$$key = $value;
}
}
如果mysql返回的数据是普通数组,那么:
foreach ($data as $key => $value) {
$$key = $value;
}