Можно ли отменить определение переменной в ColdFusion? - PullRequest
11 голосов
/ 09 июля 2009

Возможно ли отменить определение переменной в 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>

Ответы [ 2 ]

29 голосов
/ 09 июля 2009
<cfset StructDelete(Variables, "myVar") />

Variables является областью по умолчанию для большинства переменных в большинстве контекстов.

3 голосов
/ 09 июля 2009

FYI ...

<cffunction name="voidFunc" returntype="void">
</cffunction>

<cfset myVar = voidFunc()>
<cfoutput>#IsDefined("myVar")#</cfoutput>    <!--- will show NO --->

Я узнал из этой записи в блоге: cfinvoke уничтожает returnVariable для методов, возвращающих void

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...