Ответ 1
<cfset StructDelete(Variables, "myVar") />
Variables
- это область по умолчанию для большинства переменных в большинстве контекстов.
Можно ли переопределить переменную в ColdFusion?
Например, что-то вроде этого:
<cfset myVar = "lsajflksd" />
<cfoutput>
<p>myVar is Defined? #IsDefined("myVar")#</p> <!--- Prints YES --->
</cfoutput>
<cfset Undefine(myVar) /> <!--- Doesn't exist... --->
<cfoutput>
<p>myVar is Defined? #IsDefined("myVar")#</p> <!--- I want it to print NO --->
</cfoutput>
<cfset StructDelete(Variables, "myVar") />
Variables
- это область по умолчанию для большинства переменных в большинстве контекстов.
FYI...
<cffunction name="voidFunc" returntype="void">
</cffunction>
<cfset myVar = voidFunc()>
<cfoutput>#IsDefined("myVar")#</cfoutput> <!--- will show NO --->
Я узнал из этой записи в блоге: cfinvoke уничтожает returnVariable для методов, которые возвращают void
В современных версиях вы также можете использовать функцию-член struct.delete().
myVar = "lsajflksd";
variables.delete('myVar');