Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание массивов по ключу 
V
    Опции темы
s1lver
Дата 10.7.2014, 14:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 14.12.2007
Где: Россия

Репутация: нет
Всего: нет



Доброго времени суток!

На самом деле просто не представляю как объяснить, так как сам не понимаю как лучше сделать smile 

Есть исходный массив который надо преобразовать в несколько массивов по ключу. Исходный массив можно разделить на составляющие, тогда необходимо, видимо, соединить в другой массив.

Исходный массив
Код

  ["name"]=>
  array(3) {
    [0]=>
    string(10) "test name1"
    [1]=>
    string(10) "test name2"
    [2]=>
    string(0) ""
  }
  ["code"]=>
  array(3) {
    [0]=>
    string(10) "test name1"
    [1]=>
    string(10) "test name2"
    [2]=>
    string(0) ""
  }
  ["type"]=>
  array(3) {
    [0]=>
    string(6) "1"
    [1]=>
    string(8) "2"
    [2]=>
    string(4) "0"
  }
  ["element"]=>
  array(2) {
    [0]=>
    array(2) {
      [0]=>
      string(1) "1"
      [1]=>
      string(1) "2"
      [2]=>
      string(1) "3"
    }
    [1]=>
    array(2) {
      [0]=>
      string(1) "1"
      [1]=>
      string(1) "2"
    }
  }


Как можно преобразовать этот массив в такую структуру

Код

  [
    {"code":"test name1", "name":"test name1", "type":"1","element":["1","2","3"]},
    {"code":"test name2", "name":"test name2", "type":"2","element":["1","2"]},
...
]

Соответственно, массивов может быть больше двух.

Это сообщение отредактировал(а) s1lver - 10.7.2014, 14:44


--------------------
Я собрался жить вечно - пока все идет нормально!
PM MAIL ICQ   Вверх
baldina
Дата 10.7.2014, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 26
Всего: 101



как-то так http://ideone.com/lyz6Dj
PM MAIL   Вверх
s1lver
Дата 11.7.2014, 08:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 14.12.2007
Где: Россия

Репутация: нет
Всего: нет



Не много не так. Преобразование не по code, а по ключу [0]=>. code - может быть одинаковым для разных значений.

Хотя конечный результат, тот что надо


--------------------
Я собрался жить вечно - пока все идет нормально!
PM MAIL ICQ   Вверх
s1lver
Дата 11.7.2014, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 14.12.2007
Где: Россия

Репутация: нет
Всего: нет



Совсем запутался, переделал формирование массива, чтобы сразу формировалась нужная структура. Проблема отпала сразу smile 


--------------------
Я собрался жить вечно - пока все идет нормально!
PM MAIL ICQ   Вверх
baldina
Дата 11.7.2014, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 26
Всего: 101



в вашем примере нет ключа [0]. если надо по первому, то вместо $data[$code] можно current($data)
но создание сразу нужной структуры это правильный путь)))
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0452 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.