개발 Q&A

제목 실무에서도 <?php ?>를 사용하나요?
카테고리 PHP
글쓴이 Tooky 작성시각 2018/03/23 22:49:03
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 10166   RSS

안녕하세요 선배님들 포폴용으로 간단한 웹페이지를 제작중인 뉴비입니다.

각잡고 만들어보는건 처음이라 이래저래 헤매는 와중에 갑자기 궁금해져서 여쭤봅니다.

현재 CI 프레임워크를 활용하여 개발 진행중인데요 이제 view에 코드를 작성할때 종종 php단의 값을 사용해야 할때가 있습니다.

짧은 예제를 작성할때는 별 생각이 없었는데  코드가 길어지다 보니 상당히 지저분하다고 느껴지네요

특히 view 내에서 if 문을 사용할때 가장 크게 느껴집니다

  <?php
            if($this->session->userdata('is_login')){
              ?>
             <li><a href="<?=site_url('auth/logout').'?returnURL='.rawurlencode(current_url())?>"><span>Logout</span></a></li>
            <?php
          } else{
            ?>
              <li><a href="<?=site_url('auth/login').'?returnURL='.rawurlencode(current_url())?>"><span>Login</span></a></li>
              <li><a href="<?=site_url('auth/register')?>"><span>회원가입</span></a></li>
            <?php
            }
            ?>

제 개발중인 코드의 일부입니다. 유저가 로그인중일때는 로그아웃 버튼이 그 외에는 로그인과 회원가입 버튼이 뜨는 예제인데요. 이러한 if 사용이 중간중간 섞여 들어가니 나중에 에러가 날경우 찾는데에도 한세월이 걸리더라구요.

지저분한 css는 따로 css파일을 만들고 link를 걸고 JS의 경우도 같은식으로 처리가 가능하다고 알고있는데 위의 경우는 그냥 감수하고 쓰는게 방법인가요? 아니면 따로 이를 위해 사용할 수 있는 방법이 있나요?

 다음글 쪽지 삭제 기능 구현 질문 (2)
 이전글 hwp 업로드 오류 문의 (2)

댓글

변종원(웅파) / 2018/03/23 23:14:12 / 추천 1

if 에 해당하는 내용을 컨트롤러에서 미리 다 만들어서 보내는 방법도 있습니다.

조삼모사이긴 합니다. 

개발ide를 잘 선택하면 구문 에러는 바로 화면에서 나타납니다.

Tooky / 2018/03/24 15:35:41 / 추천 0

결국은 저런식으로 사용하게 되어있다는 말씀이시군요 ㅠㅠ

익숙해지는게 답이겠군요 감사합니다!

네이처그린 / 2018/03/24 23:07:25 / 추천 1
<?php if($this->session->userdata('is_login')) :  ?>
           <li><a href="<?=site_url('auth/logout').'?returnURL='.rawurlencode(current_url())?>"><span>Logout</span></a></li>
<?php else : ?>
            <li><a href="<?=site_url('auth/login').'?returnURL='.rawurlencode(current_url())?>"><span>Login</span></a></li>
            <li><a href="<?=site_url('auth/register')?>"><span>회원가입</span></a></li>
<?php endif; ?>

 

제 경우는 이렇데 쓰니까 보기 훨씬 수월 하더군요 ^^

Sublime Text 고집하다 Phpstrom으로 바꿔탄 이후로는 문법이나 자동완성에 대해서는 고민이 없어졌습니다.

(얼마전에는 블레이드 템플릿 적용해서 더 간결해졌습니다)

Tooky / 2018/03/25 14:29:45 / 추천 0

와 확실히 제 코드보다 훨씬 깔끔하네요 ㄷㄷ 이런 문법으로도 if문을 쓸수 있었군요

이게 아는만큼 보인다 라는건가요 좋은거 배워갑니다. 감사합니다!

변종원(웅파) / 2018/03/26 14:05:11 / 추천 0

단점은 조건문 내부 라인이 많을 경우 어디서 조건문 시작이고 끝인지 눈으로 찾아야 합니다.

보통 개발툴에서 조건문의 대괄호 시작과 끝을 오가는 단축키가 존재해서 쉽게 찾을 수 있는데 위 방식은 눈으로 봐야합니다. ^^