分离mysqli_fetch_array返回的两个数组

时间:2014-07-19 15:51:06

标签: php mysql arrays

我创建了这个

while ($data = mysqli_fetch_array($course_result, MYSQLI_ASSOC)) {
    print_r($data['course']);   
}  

打印出来:

Array ( 
     [user_id] => 57 
     [course] => 6 
)
Array ( 
     [user_id] => 57 
     [course] => 5 
)

如何创建两个等于“course”字段值的变量。 理想情况下,变量x最终等于6,变量y等于5(基本上我要问的是如何从mysql数组中提取值并将其放入变量中)?

3 个答案:

答案 0 :(得分:2)

没有你称之为“mysql_arrays”的东西。它们是正常的数组。

你可以这样做:

$array = array();
while ($data = mysqli_fetch_array($course_result, MYSQLI_ASSOC)) {
   $array[] = $data; // probably this way and not $array[] = $data['course'];
}  

$x = $array[0]['course'];
$y = $array[1]['course'];

答案 1 :(得分:0)

我建议您使用数组而不是变量来存储值。

$arr= array();
while ($data = mysqli_fetch_array($course_result, MYSQLI_ASSOC)) {
    $arr[] = $data['course'];
}

答案 2 :(得分:0)

猜测一下我没有完整的图片,但我想你是在这样的事情之后。

从您的数据中获取一系列课程

$data = array_map(function($value) {
    return $value['course'];
}, $data);

如果只有两个结果,请将每个结果分配给一个变量:

list($x, $y) = $data;

如果结果超过两个,则您的查询结果中包含一系列$data课程。