cfdump

説明

cfdump タグを使用して、ほとんどすべての種類の ColdFusion オブジェクトの要素、変数、値を取得します。このタグはデバッグの際に役立ちます。単純変数、複合変数、オブジェクト、コンポーネント、ユーザー定義関数、その他の要素の内容を表示することができます。cfdump では、CFC をダンプするときに cfproperty で定義されたコンポーネントプロパティが表示されます。PROPERTIES と呼ばれる新しいキーがコンポーネントダンプに追加されました。これはデフォルトで展開された状態になります。また、cfdump のテキスト形式でもこの情報が提供されます。

シンタックス

<cfdump  
    var = "#variable#" 
    output = "browser|console|file" 
    format = "text|html" 
    abort = "true|false"> 
    label = "text" 
    metainfo = "yes|no" 
    top = "number of rows|number of levels" 
    show = "columns|keys" 
    hide = "columns|keys" 
    keys = "number of keys to display for structures" 
    expand = "yes|no"  
    showUDFs = "yes|no">
注意: このタグの属性は attributeCollection 属性で指定でき、その値は構造体になります。attributeCollection 属性で構造体の名前を指定し、タグの属性名を構造体のキーとして使用します。

履歴

  • ColdFusion 9:abort 属性が追加されました。

  • ColdFusion 8: showformathidekeysmetainfooutput、および showUDFs の各属性が追加されました。

  • ColdFusion MX 7: top 属性が追加されました。

  • ColdFusion MX 6.1: COM オブジェクトをダンプする機能が追加されました。これにより、オブジェクトのメソッドと Get プロパティおよび Put プロパティについての TypeInfo 情報が表示されます。

属性

属性

必須 / オプション

デフォルト

説明

var

必須

表示する変数です。変数名をシャープ記号 (#) で囲みます。

次の種類の変数を使用すると、有意義な cfdump 出力を生成できます。

  • array

  • CFC

  • COM オブジェクト

  • ファイルオブジェクト

  • Java オブジェクト

  • simple

  • query

  • structure

  • UDF

  • wddx

  • xml

expand

オプション

yes

  • yes: Internet Explorer および Mozilla で、ビューを展開します。

  • no: 展開したビューを縮小します。

format

オプション

text

cfdump の結果をテキストでファイルに保存するか、HTML 形式でファイルに保存するかを指定するために output 属性とともに使用します。

hide

オプション

all

クエリーの場合は、単一の列名または列名のカンマ区切りリストです。構造体の場合は、単一のキーまたはキーのカンマ区切りリストです。

存在しない構造体要素を指定した場合は無視され、エラーにはなりません。

keys

オプション

9999

(構造体の場合のみ) 表示するキーの数です。

label

オプション

文字列です。ダンプ出力用のヘッダを指定します。var 属性の値が単純型の場合は無視されます。

metainfo

オプション

クエリーの場合は yes

永続 CFC の場合は no

クエリーおよび永続 CFC の場合に使用します。クエリーに関する情報 (クエリーがキャッシュされたかどうか、実行時間、SQL など) が cfdump 結果に含まれます。クエリー結果からこの情報を除外するには、metainfo="no" を指定します。永続 CFC の場合、metainfo="yes" を指定すると、getter や setter などのプロパティ属性が返されます。

output

オプション

browser

cfdump の結果の送信先です。使用できる値は次のとおりです。

  • browser

  • console

  • filename

ファイル名を指定する場合は、絶対パス名を使用する必要があります。ファイル名の指定には、絶対パス、または ColdFusion のテンポラリディレクトリを基準とした相対パスを使用できます。ColdFusion のテンポラリディレクトリを調べるには、GetTempDirectory() 関数を使用します。

show

オプション

all

クエリーの場合は、単一の列名または列名のカンマ区切りリストです。構造体の場合は、単一のキーまたはキーのカンマ区切りリストです。

showUDFs

オプション

yes

  • yes: UDF を含めます (メソッドは折り畳まれた状態です)。

  • no: UDF を除外します。

top

オプション

9999

表示する行の数です。構造体の場合、この値は表示するネストレベルの数です。

abort

オプション

false

この属性が "true" に設定されている場合、タグの位置で現在のページの処理を停止します。

使用方法

展開 / 縮小機能は、XML ドキュメントのオブジェクト、構造体、配列などの大きな構造体を操作するときに役に立ちます。

構造体を表示するには、次のようなコードを使用します。ここで、myDoc は XmlDocument 型の変数です。

<cfif IsXmlDoc(mydoc) is "yes"> 
    <cfdump var="#mydoc#"> 
</cfif>

このタグの出力は、データ型に応じて色分けされます。

テーブルのセルが空の場合は、このタグにより "[empty string]" が表示されます。

<!--- This example shows how to use this tag to display the CGI scope as a structure: ---> 
 
<cfdump var="#cgi#"><!--- This displays information about file objects. ---> 
<cfscript>  
myfile = FileOpen("c:\temp\test1.txt", "read"); 
</cfscript> 
myfile refers to: 
<cfdump var="#myfile.filepath#">