2014-04-07 2 views
2

cfmodule 내부의 일부 코드를 검토 중이므로 머리를 긁적니다. ColdFusion 평가가 실제로 수행하는 작업은 무엇입니까?

cfmodule을

처럼 호출되는 :

<cfmodule template="/cfmods/mod1.cfm" mode="breadcrumbs"> 

하고 코드 내부으로 cfelse 일련의 문장을 가지고 있지만이 하나 나 일시 중지 준 것입니다.

<cfelseif isdefined("attributes.mode") 
AND NOT comparenocase("breadcrumbs", attributes.mode)> 

누군가 이것을 말로 번역 할 수 있습니까? CompareNoCase은 음수, 0 또는 양수를 결과로 반환한다는 것을 알고 있습니다. 그렇다면 not이라는 단어를 추가하면 CompareNoCase에서 반환 된 내용과 반대 개념이 있는지 확인하십시오.

+2

그것은 말하는 복잡한 방법 "경우입니다 ... THEN에 관계없이 사건의 빵 부스러기 같은 경우 두 문자열은 동일합니다 "(대소 문자 무시). CONTINUE에 관한 – Leigh

답변

2

(조건)은 조건이 TRUE인지 확인합니다. AND NOT (조건)은 조건이 FALSE인지 확인합니다.

그래서 그 문은 말하고있다 :

Attributes.Mode는 변수로 존재하고 attributes.mode는

+0

은 CFELSEIF 코드 블록의 ** 내에서 ** 계속됩니다 ** 아니면 ** 다음 ** cfelseif 블록으로 이동합니까? – HPWD

+0

@BKK는 CONTINUE 대신 THEN을 의미한다고 생각합니다. – Henry

+5

* attributes.mode는 빵 부스러기에 맞지 않습니다. * 면책 조항 : 나는 주요하게 잠을 자지 않으므로 이것을 소금 한 알씩 가져 가라. 나는 그것이 뒤에서 일어난 것이라고 생각한다. compareNoCase()는 두 문자열이 같을 때'0'을 반환합니다. CF는'0'을'false'로 취급합니다. 'NOT '을 추가하면 의미를 바꿀 수 있습니다. 즉, "두 문자열 **이 대소 문자에 관계없이 ** 같을 때"입니다. – Leigh

관련 문제