Показать PDO Fecth All Colum в пользовательском формате - PullRequest
0 голосов
/ 06 января 2019

У меня есть функция PDO, код

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

и назовите его в моем индексе с этим кодом

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

Вывод показать как это

Примечание: преобразование массива в строку в ...

я хочу показать все столбцы выборки, подобные этой.

$array=array('key' => value, 'key' => value, 'key' => value, 'key' => value);

Кто-нибудь может мне помочь?

EDIT

Почему я хочу отформатировать этот код

$array=array('user_id' => total_ticket, 'user_id' => total_ticket, 'user_id' => total_ticket, 'user_id' => total_ticket);

потому что я хочу использовать это так

$array=array('2' => 75.76, '3' => 15.15, '4' => 7.58, '1' => 1.52);

будет использоваться в моем следующем коде

$number=rand(0,array_sum($array));
$starter=0;
foreach($array as $key => $val)
{
    $starter+=$val;
    if($number<=$starter)
    {
            $ret=$key;
            break;
    }

}

echo 'Winner is '.$ret.'<br/>';

1 Ответ

0 голосов
/ 06 января 2019

Ваша функция возвращает массив, echo выведет строку, но не может использоваться для массивов.

Поскольку вы пытаетесь вернуть результаты в формате Json, вы должны json кодировать свой ответ при возврате

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

json_encode () вернет строку json вместо массива, так что вы сможете повторить это.

Если вы хотите вывести содержимое массива (вместо строки json), вы должны использовать var_dump () для этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...