2013-03-14 2 views
0

Я прочитал все Velocity user guide, и я не вижу, как можно получить доступ к динамической переменной.Шаблон скорости Язык динамическая переменная

Сценарий:

#set ($u14 = "MARCOS SANCHEZ") 
#set ($var = "u14") 

Как я могу доступ ко $u14 с $var?

В PHP:

$$var (vm fail)

Результат ожидается: MARCOS SANCHEZ

Спасибо.

+0

Я не понимаю, какова ваша цель. Не можете ли вы напрямую получить доступ к '$ u14'? – iberbeu

+0

Да, но я не знаю u14. Я получаю число с другой переменной. – user2169505

+0

Вы знаете это, потому что вы его установили. Я думаю, вам нужно опубликовать более качественный код. – iberbeu

ответ

0

Вы можете использовать массив или карту:

## initialize the map 
#set($map = {}) 

## add an entry 
$!map.put("u14", "MARCOS") 

#set($var = "u14") 

## retrieve the value 
The value you are looking for is ${map.get($var)} 

Нечто подобное можно сделать с array. Также проверьте соответствующий раздел VLT reference guide, в котором объясняется, как инициализировать карту или массив. После инициализации вы можете вызвать методы, описанные в java API (get, put и т. Д.) Из вашего шаблона скорости.