|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.04.2011, 11:46 | #1 |
Форумчанин
Регистрация: 05.04.2008
Сообщений: 244
|
Как добавлять новые элементы (ключ=>значение) в ассоциативный массив программно.
Добрый день!
Задача: 1. создать ассоциативный массив (это понятно) 2. в новый ассоциативный массив передать первый элемент типа ключ=>значение (это тоже понятно) 3. далее программно необходимо пополнять ассоциативный массив новыми элементами (ключ=>значение); простое присваивание типа $array = array(ключ=>значение) или $array['key'] = value не подходит. функции типа array_push и так далее не подходят, так как нужно пополнять массив новыми элементами ключ=>значение, а не просто заносить значение (value). почему не работает такая конструкция: PHP код:
Не работает и такая конструкция: PHP код:
Буду благодарен за любые идеи. Спасибо. Последний раз редактировалось SkAndrew; 30.04.2011 в 12:00. Причина: дополнение |
30.04.2011, 12:46 | #2 |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
Вообще-то всегда добавлять можно было так: $arr[]=...;
Потом можно удалить дубликаты, если нужно |
30.04.2011, 12:48 | #3 |
Форумчанин
Регистрация: 05.04.2008
Сообщений: 244
|
выше я написал, что пробовал. не получается, вносится первый элемент в пустой массив или далее перезаписывается первый.
можете проверить мой второй пример, он полностью рабочий и увидете проблему. или у вас иная конструкция? приведите свой "живой" пример. спасибо. |
30.04.2011, 12:56 | #4 |
Участник клубаДжуниор
Регистрация: 23.08.2008
Сообщений: 1,616
|
array_merge, не?
Там же, в комментариях, есть и решение вашей проблемы с плюсованием.
pushl $0x18E3DF6B
call ICQ Последний раз редактировалось russian-stalker; 30.04.2011 в 12:59. |
30.04.2011, 12:57 | #5 |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
Да, у вас же здесь так... А просто так не подходит:
Код:
|
30.04.2011, 13:12 | #6 |
Форумчанин
Регистрация: 05.04.2008
Сообщений: 244
|
array_merge - не подходит.
задача еще раз: по ходу выполнения программы мне надо сохранять для дальнейшей обработки ключ-значение в некий массив, я просто смоделировал ситуацию на абстракном примере. главное принцип как записать ключ-значение в массив динамически. спасибо |
30.04.2011, 13:14 | #7 |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
А я все-таки не понял, чем мой вариант не подходит и что конкретно означает динамически? Если ключ и значение известны, то берем и делаем $arr[$key]=$value;
|
30.04.2011, 13:18 | #8 |
Форумчанин
Регистрация: 05.04.2008
Сообщений: 244
|
по ходу выполнения программы создаюся пары (ключ-значение) мне необходимо их вносить последовательно в некий массив (в конец или начало без разницы). например,
массив = (ключ1-значение1, ключ2-значение2 и так далее), то есть все время пополняя массив новыми элементами. в вашем варианте $arr[$key]=$value; получим (ключ1-значение1), например при повторном добавлении новой пары получим (ключ2-значение2)! а надо массив = (ключ1-значение1, ключ2-значение2) и так далее. теперь понятно объяснил? спасибо Последний раз редактировалось SkAndrew; 30.04.2011 в 13:20. |
30.04.2011, 13:19 | #9 |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
А в моем примере этого не происходит?
|
30.04.2011, 13:24 | #10 |
Форумчанин
Регистрация: 05.04.2008
Сообщений: 244
|
нет к сожалению не происходит.
вот можете попробовать, например так: PHP код:
происходит просто перезапись первого элемента. вроде есть какое-то решение через foreach, но я не могу понять как применить этот цикл здесь, когда мне нужно добавить пару в уже имеющийся ассоциативный массив. спасибо |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ассоциативный массив | iMax` | Общие вопросы C/C++ | 2 | 03.02.2011 09:37 |
SOAP и ассоциативный массив | Zigmuntfreyd | Работа с сетью в Delphi | 1 | 12.07.2010 16:55 |
Ассоциативный массив | phpcreator | Помощь студентам | 0 | 14.05.2010 20:18 |
Ассоциативный массив. Map | phpcreator | Помощь студентам | 0 | 08.05.2010 11:57 |
Получить массив B, присвоив его k-му элементу значение 0, если все элементы [Pascal] | М@лышка | Помощь студентам | 10 | 12.10.2009 23:29 |