테스트 사이트 - 개발 중인 베타 버전입니다

그누원본 bbs/list.php 에서 if else 구문 사용 안한 이유? 채택완료

울라프 4년 전 조회 1,808

 

여기서 왜 if eles 사용 안한 이유가 특별히 있나요?

 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
4년 전

저건 두번째 if는 필요없습니다

왜냐하면 sst가 없으면 만들어버리기 때문에 항상 sst가 값이 있는 상태이기 때문

Else 는 사용하면 안되겠네요

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

울라프
4년 전
무슨 뜻인지는 알겠는데 그래도 제 눈에는 뭔가 매끄럽지가 않네요 ㅎㅎ

댓글을 작성하려면 로그인이 필요합니다.

4년 전

균이님의 답변이 맞아 보입니다. 

if(!$sst)     $sst  = "wr_num, wr_reply";

 

$sql_order = " order by {$sst} {$sod} ";

 

만약 else 문으로 처리하게 되면.. $sql_order 에 값이 안들어갈 수 있습니다.

 

if(!$sst)     $sst  = "wr_num, wr_reply"; // $sql_order 에 값이 안들어가게 됨..

else

   $sql_order = " order by {$sst} {$sod} ";

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

울라프
4년 전
if(!$sst)
$sst = "wr_num, wr_reply"; // $sql_order 에 값이 안들어가게 됨..

else
$sst = "wr_num, wr_reply"; // 여기다 한번 더 쓰는게 가독성 있지 않을까요?
$sql_order = " order by {$sst} {$sod} ";

댓글을 작성하려면 로그인이 필요합니다.

s
sinbi Expert
4년 전

두 조건의 성격(=목적)이 다르기 때문입니다.

 

위 : 변수 $sst 없는 경우 대비한 $sst 변수 값 설정용.

아래 : $sql_order 변수 정의용.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

그누위즈
4년 전
성격이 다른데 결국은 if else로 구분을 할수있지 않냐?의 질문같네요 ㅎㅎ
소스의 성격은 $sst가 있으냐 없느냐를 구분하는데
if else 로 하면 간단한데
if 를 2개 넣을 필요있느냐? 인거같습니다 ㅎㅎ
s
sinbi
4년 전
$sql_order 변수 정의에 $sst 변수가 사용되니까,
각각 따로따로 if문 검토가 이뤄져야 할 것 같습니다.
만약,
else if나 else로 처리하면 $sst가 없는 경우,
$sql_order 정의 부분을 건너 띄어버리기 때문에 원하는 결과가 안 나오겠죠.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인