1

我正在尝试从 mySql 数据创建一个 php 关联数组,其中id的关键是,所以我可以将它与array_key_exists. 但问题是,钥匙似乎是别的东西,而不是id. 需要做什么才能使数组 key 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"
4

2 回答 2

4

检查PDO::FETCH_KEY_PAIR常数。

PDO::FETCH_KEY_PAIR

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

于 2013-05-31T07:32:41.487 回答
3

你可以这样做:

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

它通过您的输出循环创建一个新数组,其中 ID 是键,状态被分配为值。

于 2013-05-31T07:30:43.017 回答