CFdump cfcomponent cfscript - PullRequest
       6

CFdump cfcomponent cfscript

6 голосов
/ 17 декабря 2009

Можно ли использовать cfdump внутри cfcomponent? Можно ли использовать cfdump внутри cfscript?

Я знаю, что anser нет, тогда как можно передать значения функций insde cfcomponent? cfscript? Я использую CF8

Ответы [ 4 ]

8 голосов
/ 17 декабря 2009

Можно ли использовать cfdump внутри компонента cfcommpent?

Да, с некоторыми оговорками.Если вы используете CFDUMP, а затем CFABORT, дамп будет отображаться независимо от того, был ли отключен вывод компонента / метода.Это, конечно, прерывает всю обработку.

Можно ли использовать cfdump внутри cfscript?

Не совсем (если вы не используете CF9), но естьобходные пути.

Вы можете закрыть свой скрипт, вставить тег дамп, а затем снова открыть его, например, так:

</cfscript><cfdump var="#myVar#"><cfscript>

В CFLib есть также UDF, который имитирует тег CFDUMP.

Дамп

Добавлено: В CF9 и более поздних версиях также есть writeDump () .

4 голосов
/ 17 декабря 2009

Coldfusion 9:

<cfscript>
    myVar = "this is a test";
    WriteDump(myVar); 
</cfscript>

Coldfusion 8 и ниже: CF 8 не имеет версии тега cfscript, поэтому при необходимости его необходимо сначала абстрагировать в пользовательскую функцию. Эта функция должна быть доступна для вашего компонента.

Я избегал имени «WriteDump ()», чтобы предотвратить возможные конфликты, если этот код используется с CF9.

<!--- Abstract cfdump tag for use in cfscript --->
<cffunction name="scriptDump" output="no" hint="Abstracts cfdump for cfscript">
    <cfargument name="myVar" required="yes">
    <cfset var result = "">

    <cfsavecontent variable="result">
        <cfdump var="#arguments.myVar#">
    </cfsavecontent>

    <cfreturn result>
</cffunction>

<cfset myVar = "this is a test">

<!--- Test the scriptDump(var) function in cfscript --->
<cfscript>
    dumpOfMyVar = scriptDump(myVar);
</cfscript>

<!--- Test the scriptDump(var) function in regular HTML --->
<cfoutput>
    #scriptDump(myVar)#
</cfoutput>
1 голос
/ 24 ноября 2011

Вы можете использовать writeDump только в CF9. Если вы в CF8, используйте это:


<code>adminapi = createObject("component","cfide.adminapi.base");</code>
<code>adminapi.dump(foo);
1 голос
/ 17 декабря 2009

cfdump внутри cfcomponent? почему бы и нет ... Но я думаю, что вы должны сделать это в результате.

cfdump внутри cfscript? WriteDump () в CF9 или поиск cflib для UDF, который работает в CF6 +

...