Вопрос

Для отладки я хотел бы загрузить определенные переменные на свою веб-страницу.Как я могу сделать это изнутри тега cfscript?

Я попробовал следующее, но это не работает:

<cfscript>
  ...
  <cfif cgi.REMOTE_ADDR eq "IP">
    <cfdump var="#var1#"><br/>
  </cfif>
  ...
</cfscript>

Есть какие-нибудь подсказки о том, что можно сделать?

Это было полезно?

Решение

Вы не можете сделать это напрямую в версиях до CF 9.Однако вы можете использовать свалка() UDF найден в CFLib.Там есть целая библиотека UDF, которые имитируют теги CF, не имеющие прямых эквивалентов CFSCRIPT.

ColdFusion 9 (и более поздние версии) предлагает writeDump() функция.

Документация Adobe Linkfor НаписатьДамп() функция

Другие советы

используйте writeDump() так же, как вы используете writeOutput()

видеть написать дамп по ссылке CF 9

Разве следующее не намного проще и понятнее?

oAdmin = createObject("component", "cfide.adminapi.base");
oAdmin.dump(myVar);

Работает на CF7 и вперед, возможно даже раньше.

Было бы довольно легко написать и свой собственный.Вы просто определяете функцию в cfml, а не в cfscript.Вы также можете использовать это для выполнения cfaborts и cfloops.

Что-то вроде этого (из головы... не выполнено).

<CFFUNCTION NAME="MyDump">
    <CFARGUMENT NAME="OBJ" Required="TRUE">
    <CFDUMP VAR="#Obj#">
</CFFUNCTION>
<CFSCRIPT>
  if(cgi.REMOTE_ADDR eq "IP"){
    MyDump(Var1);
  }
</CFSCRIPT>

Теперь простые имена тегов разрешены в cfscript, начиная с ColdFusion 11.

<cfscript>
    cfdump (var=#myVar#);
</cfscript>
<cffunction name="setAbort" access="private" returntype="void" output="false">
 <cfdump var="#arguments#"/><cfabort>
</cffunction>

Для дампа мы используем Writedump(myvar);вместо того же в cfscript и том же мы используем abort;вместо выхода из выполнения программы в любой момент мы используем writeoutput();вместо

 <cfoutput>#myvar#</cfoutput>

ниже приведен код дампа и прерывания в cfscript.

writedump(myvar); for dump

abort; for stop execution of programm 

writeoutput(myvar); for output within cfscript
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top