Можно ли сгенерировать формат файла, как показано ниже в PHP? Потому что я собираюсь использовать это в моем графике. Так что кто-нибудь, пожалуйста, помогите мне, любая помощь будет оценена.
[{
"title": "Marketing", /* This is a code from a sample in chart */
"value": 23, /* The sample chart of link is below */
"url":"#",
"description":"click to drill-down",
"data": [
{ "title": "Jan", "value": 1, "data": [
{ "title": "AAA", "value": 2 },
{ "title": "BBB", "value": 5 },
{ "title": "CCC", "value": 1 },
] },
{ "title": "Feb", "value": 2 },
{ "title": "Mar", "value": 1 },
{ "title": "Apr", "value": 3 },
{ "title": "May", "value": 2 },
{ "title": "Jun", "value": 1 },
{ "title": "Jul", "value": 2 },
{ "title": "Aug", "value": 3 },
{ "title": "Sep", "value": 3 },
{ "title": "Oct", "value": 1 },
{ "title": "Nov", "value": 1 },
{ "title": "Dec", "value": 3 }
]
}, {
"title": "Sales",
"value": 26,
"url":"#",
"description":"click to drill-down",
"data": [
{ "title": "Jan", "value": 4 },
{ "title": "Feb", "value": 3 },
{ "title": "Mar", "value": 1 },
{ "title": "Apr", "value": 4 },
{ "title": "May", "value": 2 },
{ "title": "Jun", "value": 1 },
{ "title": "Jul", "value": 2 },
{ "title": "Aug", "value": 2 },
{ "title": "Sep", "value": 3 },
{ "title": "Oct", "value": 1 },
{ "title": "Nov", "value": 1 },
{ "title": "Dec", "value": 3 }
]
}, {
"title": "Logistics",
"value": 30,
"url":"#",
"description":"click to drill-down",
"data": [
{ "title": "Jan", "value": 2 },
{ "title": "Feb", "value": 3 },
{ "title": "Mar", "value": 1 },
{ "title": "Apr", "value": 5 },
{ "title": "May", "value": 2 },
{ "title": "Jun", "value": 1 },
{ "title": "Jul", "value": 2 },
{ "title": "Aug", "value": 2 },
{ "title": "Sep", "value": 3 },
{ "title": "Oct", "value": 1 },
{ "title": "Nov", "value": 1 },
{ "title": "Dec", "value": 3 }
]
}];
Ссылка Образца Диаграммы, с которой я учился ..
http://codepen.io/team/amcharts/pen/c5ea20211ef3a5151480e88ed680dcb8
Заранее спасибо..
Вам просто нужна функция json_encode()
отформатировать PHP Array
становиться JSON
как это. Но убедитесь, что у вашей установки PHP есть расширение Json (php-json
)
$array = [
[
'title' => 'Marketing',
'value' => 23,
'url' => '#',
'description' => 'click to drill-down',
'data' => [
[
'title' => 'Jan',
'value' => 1,
'data' => [
['title' => 'AAA', 'value' => 2],
['title' => 'BBB', 'value' => 5],
['title' => 'CCC', 'value' => 1],
]
],
[
'title' => 'Feb',
'value' => 2
],
[
'title' => 'Mar',
'value' => 2
],
[
'title' => 'Apr',
'value' => 2
],
[
'title' => 'May',
'value' => 2
],
[
'title' => 'Jun',
'value' => 2
],
[
'title' => 'Jul',
'value' => 2
],
[
'title' => 'Aug',
'value' => 2
],
[
'title' => 'Sep',
'value' => 2
],
[
'title' => 'Oct',
'value' => 2
],
[
'title' => 'Nov',
'value' => 2
],
[
'title' => 'Des',
'value' => 2
],
]
],
[
'title' => 'Logistic',
'value' => 30,
'url' => '#',
'description' => 'click to drill-down',
'data' => [
]
]
];
echo json_encode($array);
Вы можете генерировать данные JSON непосредственно в PHP. Не имеет никакого значения, извлекаете ли вы свои данные из базы данных или через какой-либо веб-сервис, или просто создаете их самостоятельно. Принцип тот же. Как только вы получили ваши окончательные данные: Например, набор результатов из базы данных, Вы можете просто вызвать функцию
json_encode()
на этих данных … Это все, что нужно сделать ….
<?php
// ASSUMING YOU PERFORMED SOME DATABASE TRANSACTIONS AND FINALLY
// YOUR RESULT-SET (CONSISTING OF AN ARRAY OF ROWS) LOOKS LIKE THIS:
$resultSet = $pdoStatement->fetchAll(PDO::FETCH_ASSOC);
// YOU MIGHT PROCESS THE RESULT FURTHER THROUGH A LOOP OR WHATEVER
// HOWEVER, ONCE YOU ARE DONE PROCESSING, YOU MAY NOW GENERATE THE JSON DATA
$jsonData = json_encode($resultSet);