Здесь показаны различия между двумя версиями данной страницы.
Both sides previous revision Предыдущая версия | |||
help:dummy [2024/09/04 15:07] aleks_versus удалено |
— (текущий) | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | **Создание многомерного массива (вложенного):** | ||
- | |||
- | 1) Использование массивов, индексируемых через строки.<sxh qsp> | ||
- | $карта_вещь['<<x>>_<<y>>'] = 'палка' | ||
- | карта_нпс['<<x>>,<<y>>,<<z>>'] = 12 | ||
- | </sxh> | ||
- | 2) Отображение многомерного массива на одномерный.<sxh qsp> | ||
- | $карта_вещь[x+y*ширина] = 'палка' | ||
- | карта_нпс[x+y*ширина+z*ширина*высота] = 12 | ||
- | </sxh> | ||
- | |||
- | **Работа с массивом, название которого хранится в переменной:** | ||
- | |||
- | 1) Временное перемещение в другой массив с помощью COPYARR с последующим возвратом (главное не забыть вернуть).<sxh qsp> | ||
- | $arr[] = 'test1' | ||
- | $arr[] = 'test2' | ||
- | $array_var = '$arr' | ||
- | copyarr '$tmp_array', $array_var | ||
- | $tmp_array[] = 'test3' | ||
- | copyarr $array_var, '$tmp_array' | ||
- | </sxh> | ||
- | 2) Динамическая генерация с помощью DYNEVAL и DYNAMIC:<sxh qsp> | ||
- | $arr[] = 'test1' | ||
- | $arr[] = 'test2' | ||
- | $array_var = '$arr' | ||
- | dynamic "<<$array_var>>[] = 'test3'" | ||
- | !Нужно чётко представлять как будет выглядеть строка после замены подстрок. | ||
- | !Через DYNEVAL получаем первый элемент из предыдущего примера: | ||
- | $needed_data = dyneval("$result = <<$array_var>>[0]") | ||
- | </sxh> | ||