我无法为一个简单的问题找到解决方案,这是一种耻辱。在使用mysql select语句之后,假设我得到两条记录,我想要做的是将这些结果存储到两个不同的变量中。比方说,我在select语句后得到4,5。我想将4和5保存到不同的变量中。
$query = mysql_query("SELECT test_id FROM test WHERE MONTH(created)='$res_month'");
while($abc = mysql_fetch_array($query)) {
echo $abc;
}
答案 0 :(得分:3)
将记录推送到如下数组:
$data = array();
while($abc = mysql_fetch_array($query)) {
$data[] = $abc;
}
$first = $data[0]['test_id'];
$second = $data[1]['test_id'];
// etc ...
您可以使用foreach访问您的数据:
foreach($data as $value){
//$value
}
答案 1 :(得分:0)
$query = mysql_query("SELECT test_id FROM test WHERE MONTH(created)='$res_month'");
$a = array();
while($abc = mysql_fetch_array($query)) {
$a[] = $abc['test_id'];
}
访问值
foreach($b as $a){
echo $b;
}
不要使用mysql_ *函数,因为从PHP 5.5.0起不推荐使用它们
答案 2 :(得分:0)
mysql_fetch_array中的数组键始终是表中的字段名。 每个循环都会从查询结果中推出一个新行。
正如aaron所说,你可以保留它将值推入数组。 如果表具有主键,您也可以使用二维数组。 这样您就可以按索引查找行。
$query = mysql_query("SELECT test_id,field2,field3 FROM test WHERE MONTH(created)='$res_month'");
$data=array();
while($abc = mysql_fetch_array($query))
{
// two dimension array
$data[$abc['test_id']]['test_id']=$abc['test_id'];
$data[$abc['test_id']]['field2']=$abc['field2'];
$data[$abc['test_id']]['field3']=$abc['field3'];
// view values
echo $abc['test_id'];
echo $abc['field2'];
echo $abc['field3'];
}