Php 关联多维数组
我确实有一个从MySQL数据库中获取两个用户的查询。我在用PDO 这是返回的数组,使用Php 关联多维数组,php,arrays,pdo,Php,Arrays,Pdo,我确实有一个从MySQL数据库中获取两个用户的查询。我在用PDO 这是返回的数组,使用fetchAll(PDO::FETCH\u ASSOC) 由于行数组是数字数组,要从中获取数据,我必须执行$row[0][field],$row[1][field] 但我希望它使用user\u id进行关联,因此我可以执行$row[user\u id][field] 有可能吗?我怎么能做到呢?对不起,没有内置的。您必须自己使用和填充阵列: $result = array(); while($row = $stm
fetchAll(PDO::FETCH\u ASSOC)
由于行数组是数字数组,要从中获取数据,我必须执行$row[0][field]
,$row[1][field]
但我希望它使用user\u id
进行关联,因此我可以执行$row[user\u id][field]
有可能吗?我怎么能做到呢?对不起,没有内置的。您必须自己使用和填充阵列:
$result = array();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
// note that $row['user_id'] will currently a string
// if you need integers as indexes then use intval($row['user_id']);
$result[$row['user_id']] = $row;
}
// dump all records
var_dump($result);
// dump username of user with uid = 4
var_dump($result['4']['username']);
它已经是一个关联数组,包含多个不同的记录 使用
foreach
分别获取每条记录:
foreach($rows as $id => $row)
{
echo "Record n°" . $id . ": " . $row['user_id'] . "<br>";
}
foreach($id=>$row的行)
{
回显“记录n°”.$id.:“$row['user_id']。”
”;
}
我不能这样做,因为我正在编写的脚本已经有了foreach。在这个foreach中,我有一个变量,即用户id,它在两个值之间交换。这就是为什么我需要如我所说的那样使用数组,这样我就可以根据用户id获得不同的数据。我这样做了,但是数组中有两个值。每个字段一个带关联键,一个带数字键。检查我的更新。我现在在PDO::FETCH()
中强制执行PDO::FETCH::FETCH
。这应该适合你的需要谢谢,太好了!
foreach($rows as $id => $row)
{
echo "Record n°" . $id . ": " . $row['user_id'] . "<br>";
}