Cfdump组件方法值,而不是组件结构

Sam*_*m M 2 coldfusion coldfusion-9

我最近开始使用cfc组件在Session变量中存储用户信息.我曾经将它们作为单个变量存储在Session中,例如Session.UserId,Session.Firstname或Session.Lastname.这个新组件很好地为我提供了一个组件,其中包含我需要的每个值的get方法(即Session.User.getUserId(),Session.User.GetName()等).

但是当我为调试执行会话变量的cfdump时,它会显示对象结构的元数据.我想看看组件的get方法返回的值.有什么方法可以使用cfdump用对象元数据输出函数值?

Ada*_*ron 5

<cfdump>不是魔术,它只是输出你给它的价值.由于您的CFC实例不公开反映这些值的任何公共属性,<cfdump>因此无法知道它们是什么.

如果您需要提取所有的专用属性反映一重击你以前的会话范围,那么你需要创建一个方法,这样做,然后<cfdump> .例如:

public struct function getVariables(){
    return  variables;
}
Run Code Online (Sandbox Code Playgroud)

如果你是抽象的价值观,你想进一步,例如成variables.sessionStuff(variables.sessionStuff.userId,variables.sessionStuff.name等等),然后写一个方法getSessionStuff()返回variables.sessionStuff.