Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.08.2016, 21:29   #1
rediska3
Новичок
Джуниор
 
Регистрация: 22.03.2016
Сообщений: 2
По умолчанию Массив в JSON

Приветствую.
Помогите решить проблему.

Есть массив, который преобразовывается в JSON:
Код:
foreach ($main as $tasks) {     
    $TasksArray[] = array('name' => $tasks['taskname'], 'description' => $tasks['taskdescription'], 'day' => $tasks['day_id']); 
}
echo json_encode($TasksArray, JSON_UNESCAPED_UNICODE);
Цитата:
[{"name":"Задача 101","description":"что-то","day":"1"},
{"name":"Задача 102","description":"что-то","day":"1"},
{"name":"Задача 103","description":"что-то","day":"2"},
{"name":"Задача 104","description":"что-то","day":"3"},
{"name":"Задача 105","description":"что-то","day":"3"},
{"name":"Задача 106","description":"что-то","day":"4"},
{"name":"Задача 107","description":"что-то","day":"4"},
{"name":"Задача 108","description":"что-то","day":"4"},
{"name":"Задача 109","description":"что-то","day":"5"},
{"name":"Задача 110","description":"что-то","day":"5"}]
как вывести массив так, чтобы конечный JSON имел следующий вид? (вывести в подмассивы по дням)

Цитата:
[{"tasks":[{"name":"Задача 101","description":"что-то"},{"name":"Задача 102","description":"что-то"}],"day":1},
{"tasks":[{"name":"Задача 103","description":"что-то"}],"day":2},
{"tasks":[{"name":"Задача 104","description":"что-то"},{"name":"Задача 105","description":"что-то"}],"day":3},
{"tasks":[{"name":"Задача 106","description":"что-то"},{"name":"Задача 107","description":"что-то"},{"name":"Задача 108","description":"что-то"}],"day":4},
{"tasks":[{"name":"Задача 109","description":"что-то"},{"name":"Задача 110","description":"что-то"}],"day":5}]
Спасибо.
rediska3 вне форума Ответить с цитированием
Старый 18.08.2016, 00:38   #2
predefined
Форумчанин
 
Регистрация: 01.08.2016
Сообщений: 182
По умолчанию

2-я циклами:
PHP код:
$main = array(
array(
"taskname"=>"Задача 101","taskdescription"=>"что-то 101","day_id"=>"1"),
array(
"taskname"=>"Задача 102","taskdescription"=>"что-то 102","day_id"=>"1"),
array(
"taskname"=>"Задача 103","taskdescription"=>"что-то 103","day_id"=>"2"),
array(
"taskname"=>"Задача 104","taskdescription"=>"что-то 104","day_id"=>"3"),
array(
"taskname"=>"Задача 105","taskdescription"=>"что-то 105","day_id"=>"3"),
array(
"taskname"=>"Задача 106","taskdescription"=>"что-то 106","day_id"=>"4"),
array(
"taskname"=>"Задача 107","taskdescription"=>"что-то 107","day_id"=>"4"),
array(
"taskname"=>"Задача 108","taskdescription"=>"что-то 108","day_id"=>"4"),
array(
"taskname"=>"Задача 109","taskdescription"=>"что-то 109","day_id"=>"5"),
array(
"taskname"=>"Задача 110","taskdescription"=>"что-то 110","day_id"=>"5")
);


foreach (
$main as $tasks) {     
    
$arr$tasks['day_id'] ][] = array('name' => $tasks['taskname'], 'description' => $tasks['taskdescription']);
}
foreach (
$arr as $key => $val) {     
    
$TasksArray[] = array('task' => $val'day' => $key);
}
echo 
json_encode($TasksArrayJSON_UNESCAPED_UNICODE); 
predefined вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JSON из JS vinniepooh JavaScript, Ajax 10 01.08.2016 17:16
Работа с JSON (System.JSON) nibufep Общие вопросы Delphi 3 19.04.2016 18:21
JSON Exception [org.apache.json] spectrum988 Помощь студентам 3 11.12.2015 09:25
JSON MORPEH Общие вопросы Delphi 2 06.12.2015 12:28
C++ JSON qip2005 Visual C++ 2 05.11.2012 19:48