Преобразование многомерного массива из PDO в два простых массива для диаграммыPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Преобразование многомерного массива из PDO в два простых массива для диаграммы

Сообщение Anonymous »

У меня есть MariaDB со статьями, и у каждой статьи есть дата. Я хочу отобразить гистограмму с количеством статей на дату.

Я получаю данные с помощью этого кода:

Код: Выделить всё

$statement = $pdo->prepare(
"   SELECT
Date(a_timestamp) AS thedate,
count(a_timestamp) AS counted
FROM `$dbtable`
WHERE Year(a_timestamp) = '2019'
GROUP BY thedate
ORDER BY thedate
");
$statement->execute();
$result = $statement->fetchAll();
var_dump($result);
print json_encode($result);
С результатом:

Код: Выделить всё

array(2) {
[0]=>
array(4) {
["thedate"]=>
string(10) "2019-06-15"
[0]=>
string(10) "2019-06-15"
["counted"]=>
string(2) "30"
[1]=>
string(2) "30"
}
[1]=>
array(4) {
["thedate"]=>
string(10) "2019-06-16"
[0]=>
string(10) "2019-06-16"
["counted"]=>
string(2) "29"
[1]=>
string(2) "29"
}
}

[{"thedate":"2019-06-15","0":"2019-06-15","counted":"30","1":"30"},{"thedate":"2019-06-16","0":"2019-06-16","counted":"29","1":"29"}]
Мне нужно для Chart.js что-то вроде этого (https://www.chartjs.org/docs/latest/getting-started/):

Код: Выделить всё

labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
data: [0, 10, 5, 2, 20, 30, 45]
Как преобразовать результат, чтобы он подходил для Chart.js?

Я думаю, их много. способы: изменение результата PDO, преобразование полученного массива и редактирование массива с помощью js.

Я пытался изменить результат PDO с помощью fetchColumn, но тогда я смог получить только один столбец и мне пришлось выполнить два запроса SQL, верно?

Я пытался преобразовать полученный массив с помощью $singleD = array_reduce($result, 'array_merge', array());, но не подошло.

Я попробовал два руководства по Chart.js, но думаю, что входные данные json были неправильно отформатированы. https://www.dyclassroom.com/chartjs/cha ... le-and-php и https://phppot.com/php/creating- динамический-график-данных-с использованием-php-and-chart-js/

Подробнее здесь: https://stackoverflow.com/questions/566 ... or-a-chart
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»