2012-02-06 4 views
0

나는 전자 메일로 사용자를 검색하는 기능이 있습니다. 사용자가 발견되면 함수는 사용자 ID를 리턴합니다. 그렇지 않은 경우는 false를 리턴합니다.userid를 true로 평가

12202436120g1200069971처럼 보이는이 사용자 ID를 어떻게 평가할 수 있습니까?

+2

이것은 의미가 없습니다. 실제 질문에 대해 다시 말 할 수 있습니까? – gahooa

답변

6
<cfif userid NEQ false> 
    // do something 
<cfelse> 
    // do something else 
</cfif> 
+0

IF 문에 평평한 부울 평가가 아니라는 설명을 추가합니다 (예 : 해당 문안에서 userid는 "false"를 포함 할 수있는 문자열이 아닌 부울입니다). ''이라고하는 말처럼 보이는 것을 설명합니다. 누군가가 잘못 생각한 것입니다. 난 문자열 또는 부울의 혼합을 반환하는 방법을 가지고 생각, 가난한 접근 방식 (이 바로 그 이유로), btw입니다. –

+0

이것은 좋은 접근 방식이며 잘 작동하지만, 나는 그 표현력이 좋다고 생각하지 않습니다. 이는 ColdFusion의 기능으로 인해 많은 것들이 암묵적으로 부울로 변환되는 userid가 부울 값이라는 것을 의미합니다. 그러나 머리 속에있는 코드를 정신적으로 파싱하는 경우에는 "사용자 ID의 값이 false 인 경우"에 암시 적 변환을 수행해야합니다. 그 이유는 내가 내 대답에서 한 접근법을 취하는 이유입니다. "사용자 아이디가 길이를 가지고 있다면이 방법이 좋습니다"라고 읽습니다. 제 의견으로는 표현력이 뛰어나지 만 그것은 단지 의견 일뿐입니다. – bittersweetryan

5

만약 내가 제대로 이해하고 내가 좋아하는 뭔가를 할 거라고 : ColdFusion에서 0에서

if(len(userid)){ 
    //true 
} 
else{ 
    //false 
} 

은 거짓이고 (음 또는 양) 다른 수는 사실이다.

+1

두 번째 비터 웨트 리안의 답변이 경미한 설명으로 나옵니다. 함수 (예 : 문자열 또는 부울/거짓)에 대해 다른 변수 유형을 리턴하거나이 중 적어도 하나를 리턴하는 것은 좋은 생각이 아닙니다. 사용자 ID 나 공백 문자 중 하나를 반환하는 것이 가장 좋으며,이 경우 len()을 명시된대로 사용할 수 있습니다. –

관련 문제