Poniżej znajduje się blok kodu, którego używam.Błąd w dynamicznym dostępie zmiennym w ColdFusion
<cfset variables.test1 = 'interface.temp1'>
<cfset variables.test2 = 'interface.temp2'>
<cfset variables.test3 = 'variables.' & variables.test2>
<cfset variables["#variables.test1#"] = 23>
<cfset "#variables.test3#" = 50>
<cfdump var="#variables#">
<cfdump var="#variables['interface.temp1']#">
Załączony obraz opisuje wyjście, otrzymuję. Pierwszy cfdump wyświetla wartość "interface.temp1" jako "undefined", aw drugim cfdump wyświetla wartość jako "23". Jeśli spojrzysz również na pierwszy plik cfdump, wyświetla on wszystkie zmienne w zakresie ZMIENNE, ale nie ma zmiennej o wartości "23", a następnie w drugiej cfdump skąd pobiera wartość "23"?
Proszę mi pomóc poznać przyczynę tego.
Dane wyjściowe zamieszczone powyżej nie są danymi wyjściowymi uzyskanymi podczas uruchamiania tego kodu w systemie CF9. Wszystko działa zgodnie z oczekiwaniami (spróbuj na cflive.net). –
Jaką wersję CF używasz? –
@Michael Giovanni Pumo, używam CF9 –