Ren*_*eno 5 coldfusion coldfusion-8
我通常不在ColdFusion中工作,但是有一个FTP进程正在工作我必须创建一个报告,目前唯一的选择是ColdFusion 8服务器.这个FTP提要有一些问题(垃圾也).
所以,我进行查询然后我需要在输出期间转换一些字符串值来做一些数学运算.在那之前:
如何判断输出循环中的字段是否为空或空,是否可以转换为有效数字的字符串,且不是0?
有没有一个简单的方法来做这个与很多if语句?
谢谢!
Pet*_*ton 10
所以你想确保变量是数字但不是零?
那你想要这个:
<cfif IsNumeric(MyVar) AND MyVar NEQ 0 >
Run Code Online (Sandbox Code Playgroud)
小智 5
确定字符串是否为空/空并且是否为数字而不是0?
这是我在这种情况下使用的代码.
<cfif isDefined(stringVar) and len((trim(stringVar)) and isNumeric(stringVar)>
do stuff here
</cfif>
Run Code Online (Sandbox Code Playgroud)
如果变量存在,则isDefined返回true.如果你知道变量的范围,例如,它在表单或url作用域中,你可以使用structkeyExists(form,"stringVar").如果你知道变量的范围,我建议使用这种方法.
Len(trim(stringVar))是第二次检查.首先,它会修剪字符串中的任何前导或尾随空格 - 这可确保不传递任何空变量.然后,如果有东西,它将返回字符串的长度.如果它的空len将返回0.
如果变量是数字,则isNumeric(stringVar)返回true,否则返回false.
心连心,
拉里