View 에서 PHP문법을 CI 문법으로 대체 Alternate PHP Syntax for View Files
CodeIgniter의 템플릿엔진 을 사용하지않는다면 ,아마 님하는 View 파일에서 순수 PHP 를 쓰실겁니다. 뷰 파일에서 PHP 코드를 최소화 하기위해서 루프등 코드 블록에서는 PHP 대체문법을 사용하시고 , echo 문의 경우에는 단축태그를 사용하시길 권장합니다. 여러분이 이런 문법에 익숙하지않았다면, 이 문법은 여러분의 코드에서 대괄호(brace)를 제거해주고 echo 문을 제거해줄것입니다.
자동화된 짧은 태그 지원 Automatic Short Tag Support
Note: 본페이지에서 설명하는 문법이 당신의 서버에서는 작동하지 않는다면, 아마 php.ini 파일에서 짧은태그(short tags) 가 비활성화(disabled)되어있기 때문일것입니다.CodeIgniter는 만약 서버에서 지원하지않는다고해도 본페이지의 문법을 사용할 수 있도록 옵션을 제공합니다. 해당 옵션을 적용하면 짧은태그(short tags)를 즉석해서 다시 쓸것(rewrite)입니다. 이 옵션은 config/config.php 파일에서 설정 할 수 있습니다.
주의 : 만약 이 옵션을 사용하지 않으시면, 뷰(View)파일에서 PHP 에러가 발생했을때 , 에러메시지와 줄번호가 정확하게 표시되지 않을것입니다. 대신에 모든 에러는 eval() 에러처럼 표시될것입니다.
에코문 대체 Alternative Echos
일번적으로 에코문을 사용하여 변수를 출력하려면 아래와 같이 할것입니다:
<?php echo $variable; ?>
대체문법은 아래와 같습니다.:
<?=$variable?>
대체 분기,루프 구조 Alternative Control Structures
if, for, foreach 및 while 과 같은 분기, 루프 구조 또한 단순한 구조로 사용될 수 있습니다.아래는 foreach 문의 예제입니다:
<ul>
<?php foreach($todo as $item): ?>
<li><?=$item?></li>
<?php endforeach; ?>
</ul>
보시는 바와 같이 대괄호가 없고 대신 괄호 닫는부분이 endforeach로 변경되었습니다. 앞에 나열된 각종 분기,루프 구조는 유사한 구조를 가집니다.닫는괄호 부분은 endif, endfor, endforeach, endwhile 를 사용하시면 됩니다.
또한 각 구조 뒤에 세미콜론이 아닌 콜론을 사용한다는점을 주의하세요(끝부분 제외).
if 문을 사용하는 예제입니다.콜론에 주목해 주세요:
<?php if ($username == 'sally'): ?>
<h3>Hi Sally</h3>
<?php elseif ($username == 'joe'): ?>
<h3>Hi Joe</h3>
<?php else: ?>
<h3>Hi unknown user</h3>
<?php endif; ?>