EVAL(Variable
)
Wertet eine Variable doppelt aus. Das lässt sich am besten an einem
Beispiel erklären: Wenn die Variable ${VAR}
den String
"${VAR2}
" enthält, würde sie ohne Eval()
zu
diesem String ausgewertet. Mit Eval()
wird auch
${VAR2}
nochmal zu ihrem Inhalt ausgewertet.
; wenn VAR den String "${VAR2}" enthält und VAR2 den String "Hallo Welt ": exten => 123,1,Set(foo=${EVAL(${VAR})}) ; dann ist foo jetzt "Hallo Welt"
Interner Hilfetext zu dieser Applikation in Asterisk 1.4: -= Info about function 'EVAL' =- [Syntax] EVAL(<variable>) [Synopsis] Evaluate stored variables. [Description] Using EVAL basically causes a string to be evaluated twice. When a variable or expression is in the dialplan, it will be evaluated at runtime. However, if the result of the evaluation is in fact a variable or expression, using EVAL will have it evaluated a second time. For example, if the variable ${MYVAR} contains "${OTHERVAR}", then the result of putting ${EVAL(${MYVAR})} in the dialplan will be the contents of the variable, OTHERVAR. Normally, by just putting ${MYVAR} in the dialplan, you would be left with "${OTHERVAR}". Differenz zum internen Hilfetext in Asterisk 1.2: - keine - |