php - MySQL PDO fetchAll 作为具有格式的数组

标签 php mysql pdo fetchall

我有这个 PDO 代码

function getAllUserTicketHistoryJson($rid){
    global $conn;
    $stmt = $conn->prepare("SELECT user_id, total_ticket FROM lottery_user WHERE round_id = :rou");
    $stmt->bindParam(':rou', $rid);
    $stmt->execute();
    $stmt->setFetchMode(PDO::FETCH_ASSOC);
    $res = $stmt->fetchAll();
    return $res;
}

并显示我的索引 php 文件中的数据,如下所示

$getAllUserTicketHistoryJson = getAllUserTicketHistoryJson($getRound['id']);

并将所有数据调用到此

foreach($getAllUserTicketHistoryJson as $key => $value){
   $array=$value;
}

当我尝试 var_export($value); 时数据显示如下

array ( 'user_id' => '1', 'total_ticket' => '1', )array ( 'user_id' => '2', 'total_ticket' => '50', )array ( 'user_id' => '3', 'total_ticket' => '10', )array ( 'user_id' => '4', 'total_ticket' => '5', )

我的问题是,我可以将数据显示在一个数组中吗?

应该是这样的

array("1" => 1, '2' => 50, '3' => 10, '4' => 5)

如何让数据只在一个数组中?

最佳答案

找到答案了,我们需要在 foreach 中自定义格式。

所以代码会是这样的

$data = array();
foreach($getAllUserTicketHistoryJson as $value){
    $data[$value['user_id']] = number_format((float)($value['total_ticket'] / $getAllTicketRound * 100), 2, '.', '');
}

关于php - MySQL PDO fetchAll 作为具有格式的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54063354/

相关文章:

javascript - 如何在 smarty 模板中的 javascript 上插入代码 php

mysql - 如何将大型mysql表上传到远程mysql服务器

php - 未定义的 fetchAll 并在返回的 PDOStatement 中获取

php - 表中的最新事件,行的颜色不断变化

php - laravel 包含 View 中的数据

mysql - EXCEL VBA 为多个变量赋值

mysql - 如何在sql中过滤子类别的id

php - 从 PHP 变量更新数据库数据

php - 使用 ClearDB 在 Heroku 上部署 PHP Web 应用程序

php - 如何应用 mysql 200 个连接限制?