从mysql数据创建一个纯php关联数组

时间:2013-05-31 07:26:06

标签: php arrays

我正在尝试从mySql数据创建一个php关联数组,其中id是关键,因此我可以将其与array_key_exists一起使用。但问题是,关键似乎是别的而不是id。需要做什么才能使数组键id

$conn = connect();
$stmt = $conn->prepare("select id, concat(type,status) as status from arraytest");
$stmt->execute();
$myArray = $stmt->fetchAll(PDO::FETCH_ASSOC);
print_r(($myArray));

所需的输出

array("3"=>"00","6"=>"01");

当前输出

Array ( [0] => Array ( [id] => 3 [status] => 00 ) [1] => Array ( [id] => 6 [status] => 01 ) )

样本表数据:

"id"    "type"  "status"
"3"    "0"      "0"
"6"    "0"      "1"

2 个答案:

答案 0 :(得分:4)

检查PDO::FETCH_KEY_PAIR常数。

  

PDO :: FETCH_KEY_PAIR

     

将一个两列结果提取到一个数组中,其中第一列是键,第二列是值。自PHP 5.2.3起可用   来源:http://php.net/manual/en/pdo.constants.php

答案 1 :(得分:3)

你可以这样做:

foreach($myArray as $arr)
    $o[$arr['id']] = $arr['status'];

它循环输出创建一个新数组,其中ID是键,状态被指定为值。