|
|
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
GrigoriyFomin меня полгода гнобили, теперь я буду новобранцев гнобить. Это так не работает, если писюлька маленькая, тебя новобранцы на пукан оденут,и отправят по полю без трусиков клещей ловить удочкой на обед. GrigoriyFomin в дельфе из коробки решения нет, но вместо развития дельфей до уровня современных языков, вы предлагаете костыли по принципу - из того что было, то и налепила. Я могу в Delphi юзать чистые массивы PHP со всеми плюшками без инициализации PHP интерпретатора если он не нужен. Прирост производительности будет больше чем у всего, что есть в Delphi ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 01:34 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
GrigoriyFomin ВсеРазумный, это похоже на дедовщину - меня полгода гнобили, теперь я буду новобранцев гнобить. переведу для тех, кто не служил - раз я заморочился и решил эту олимпиадную задачу - пусть теперь любой доразовьется до моего уровня (я - ж бог программирования!!!) и попробует ее также решить! К чему это - в пхп это делается красиво и удобно, в дельфе из коробки решения нет, но вместо развития дельфей до уровня современных языков, вы предлагаете костыли по принципу - из того что было, то и налепила. Вот только не надо тут упоминать в суе дженерики, tdictionry<> и прочие прокладки. Дельфи в данном случае слился - факт. Опровергните красивым кодом, плз, дабы посыпать седины дельфийского программера с опытом 20 лет пеплом. Что навеяло - вкладка Win3.1 - то есть в дельфях главное поддержать совместимость с Win3.10 90 какого-то года, нежели внедрять новые течения современных языков! А по сути - FireDac - купили сторонний, FireMonkey - энтузиазмский проект, че осталось? вкладки Win32 и win 3.1 "Моск пэхапэшника" - (с). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 03:08 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
ъъъъъ, ПхпГМ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 07:29 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 10:17 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
ВсеРазумный Без ограничений там. Это не многомерный массив, а вложенный. Многомерных в PHP нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 11:33 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
GrigoriyFomin К чему это - в пхп это делается красиво и удобно, в дельфе из коробки решения нет, Хорошо, Делфи отстой. Приведите пример решения на Java. Напомню требования 1. Ключами массива могут быть строки и/или числа 2. Строковой индекс, который может быть преобразован к числу, должен быть преобразован к числу 3. Массив должен сохранять порядок добавления элементов 4. Должен быть быстрый поиск по ключу 5. Элементами массива могут быть любые типы, в том числе и массивы 6. Все преобразования типов должны происходить под капотом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 14:29 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
Alibek B. Многомерных в PHP нет. А кто это у нас такой умный Пример #14 Рекурсивные и многомерные массивы Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 15:29 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_ 6. Все преобразования типов должны происходить под капотом Не согласен с требованием. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 16:34 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
Если непонятно, могу переставить слова: в PHP нет многомерных массивов, есть только вложенные (рекурсивные). Если не знаете, что такое многомерные массивы — посмотрите фортран. Многомерный массив — это a[i1,i2,...], а не a[i1][i2]... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 16:41 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
Здесь как-то с самого начала топика идет борьба терминологий. Много-мерный ключ это так. Если Код: c# 1. то это одномерный справочник пользователй sql.ru где ключ - одна строка. А вот - многомерный Код: c# 1. В географическом справочнике в квадрате 125,6 лежит некое описание что это - детский садик. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 16:54 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
Много-мерных справочников - скорее всего не бывает. Никто их так не классифицирует. Но есть просто справочники где Value - нетипизированное и вы можете в Value положить любой объект в т.ч. строку и число и такой-же еще справочник. Это уже 100 лет существует и в C#/Java но никто это не обзывает много-мерным и ассоциативным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 17:05 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
mayton Много-мерных справочников - скорее всего не бывает. Разумеется, это крайне неэффективно (по расходу памяти) и никому не нужно. А вот многомерные массивы иногда бывают нужны. Просто в PHP некоторые структуры названы массивами (и ведут себя как массивы), вот студенты и привыкают это название проецировать на остальные случаи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 17:15 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
Вариант реализация ассоциативных массивов http://www.delphikingdom.com/asp/viewitem.asp?catalogid=868 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 20:04 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
Alibek B. Если непонятно, могу переставить слова: в PHP нет многомерных массивов, есть только вложенные (рекурсивные). Если не знаете, что такое многомерные массивы — посмотрите фортран. Многомерный массив — это a[i1,i2,...], а не a[i1][i2]... Так это одно и тоже, просто разный подход к обращению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 22:50 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_ GrigoriyFomin К чему это - в пхп это делается красиво и удобно, в дельфе из коробки решения нет, Хорошо, Делфи отстой. Приведите пример решения на Java. Напомню требования 1. Ключами массива могут быть строки и/или числа 2. Строковой индекс, который может быть преобразован к числу, должен быть преобразован к числу 3. Массив должен сохранять порядок добавления элементов 4. Должен быть быстрый поиск по ключу 5. Элементами массива могут быть любые типы, в том числе и массивы 6. Все преобразования типов должны происходить под капотом В дельфи есть, не совсем, но почти такое. Конкретно - у меня. Словарь для хранения данных типа Variant. То есть, может и вариантные массивы. Ключом является строка. Доступ по ключу быстрый, ибо словарь. На основе (наследник) TDictionary из библиотеки Fundamentals, При этом сохраняется возможность доступа в порядке добавления. Быстрее, чем TStringList. Интерфейс: Код: pascal 1. 2. 3. 4. 5. 6. Экспортирован в движок фастрепорта для ручного кодирования сложных отчетов в скрипте. Произвольные типы не поддерживает, естественно, но поддерживает всё, что реализует разработчик. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 22:58 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
ВсеРазумный Alibek B. Если непонятно, могу переставить слова: в PHP нет многомерных массивов, есть только вложенные (рекурсивные). Если не знаете, что такое многомерные массивы — посмотрите фортран. Многомерный массив — это a[i1,i2,...], а не a[i1][i2]... Так это одно и тоже, просто разный подход к обращению. Фиквам это, а не одно и тоже. В Delphi многомерный массив занимает непрерывную область памяти, соответственно, позволяя манипулировать с такой памятью. А массив массивов - непрерывная область указателей на другие массивы. Также разница в управлении памятью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 23:07 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 23:11 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
ъъъъъ Экспортирован в движок фастрепорта для ручного кодирования сложных отчетов в скрипте. А Фастовского TfrxVariable не хватает ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 23:14 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
ВсеРазумный ъъъъъ, Какая разница что там под капотом, если важен внешний вид Особенно если и внешний вид разный. Ты пьяный, что ли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2020, 23:15 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
DimaBr, фастовский - он медленный (ну это ладно), в некоторых случаях: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. и в каких-то версиях (сейчас не знаю, может уже нет) сохранял значения созданных пересенных в шаблоне, что иногда веселило в ненеожиданные моменты... :) И почему-то я не смог найти способ определить - есть ли такая переменная со значением null, или нет, ну вот надо было. И ещё что-то. Потом плюнул и создал свой, такой, как пожелала моя левая пятка в тот момент времени... например, доступ по индексу (в порядке добавления). И вообще я использую его и в проектах без фастрепорта - точно одним TfrxVariables не обойтись было... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2020, 00:00 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
-- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2020, 00:07 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
ъъъъъ, А можете кейс использования переменных описать ? Что там храниться, и как, в таком количестве, чтобы поиск в лоб сильно тормозил работу. Вопрос уже поднимался как-то, но до реальных кейсов не доходило. Нужно понять, что тут лучше делать, переделывать переменные или вводить новую сущность в виде словаря. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2020, 01:52 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
_Den_Z_, да ну. Меня уже водили мордой по батарее, что скрипты большинству не нужны, поэтому редактор убогий и отладчик. Не стану отвлекать - глядишь, силы на редактор будут направлены, или на отладчик. ЗЫ: дошло, "реальные кейсы" == "ну и нах.. вам это надо"... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2020, 02:05 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
ъъъъъ, Ну вот, уже в рукобатарея-прикладстве обвиняют А я всего-то поинтересовался, как используете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2020, 02:17 |
|
||
|
Как сделать Асоциативный многомерный массив
|
|||
|---|---|---|---|
|
#18+
_Den_Z_, вспомнил, откуда это у меня пошло. Что-то группировал/собирал, попытался использовать вариантные массивы,все было очень плохо. Загрузил демку VCL FR6, посмотреть. Все как раньше. VarArrayCreate() - есть, но пользоваться созданными массивами все также неудобно. Как узнать размерность и границы созданного массива? Как изменить элемент вложенного массива без полного копирования всего вложенного массива? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2020, 02:31 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39986529&tid=2038078]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
163ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
69ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 483ms |

| 0 / 0 |
