일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 우분투 20.04
- Raspberry Pi
- Ubuntu 20.04
- 라즈베리파이
- 제주도
- FMS
- MySQL
- C
- upbit
- Selenium
- Laravel
- 우분투
- ubuntu
- 20.04
- php
- 회고
- 맛집
- 업비트
- 라라벨
- 맥
- TiL
- 옵지
- 옵티머스g
- 코드이그나이터
- 옵G
- 셀레니움
- 옵티머스 g
- 프레임워크
- 라즈비안
- codeigniter
- Today
- Total
평범한 이야기들
[PHP] CodeIgniter (코드이그나이터) View 본문
CI의 View를 정리할려고 합니다.
View는 사용자들이 볼 수 있는 영역, 즉 화면에 출력되는 부분이라고 할 수 있습니다.
CI를 이용한다면 MVC 디자인 패턴을 사용하기 때문에 View를 나누어 주는것이 좋다고 봅니다.
Controller에서 직접 코딩하지 않고 View를 사용하는 이유는 체계적으로 관리를 하기 위함입니다.
디자이너나 퍼블리셔, 그리고 프로그래머의 업무를 나누어 작업 할 수 있기 때문에
수정하는 과정에서 오류를 조금이나마 낮출 수 있기 때문입니다.
CI가 설치된 폴더에 application 디렉토리 하위에 views라는 디렉토리에 php 파일을 생성하고
화면에 보여질 소스를 입력하시고 저장하시면 됩니다.
(보통은 html 태그들입니다.)
Controller에서는 뷰를 호출하기 위해서 다음과 같은 구문을 사용해야합니다.
$this->load->view("파일명");
확장명은 안쓰셔도 됩니다. 약속입니다.
이 구문을 통해 application/views/에 있는 파일을 화면으로 불러올 수 있습니다.
저는 application/views/ 에 총 4가지의 파일을 추가하였습니다.
공통된 파일
header.php
footer.php
그 외 메인부분
test.php
some.php
그리고 다음과 같이 코딩하였습니다.
application/views/header.php
<!DOCTYPE html> <html> <head> <title>CodeIgniter 연습</title> <meta charset="utf-8"> </head> <body> <header> <h1> Codeigniter 연습 </h1> </header>
application/views/footer.php
<footer> footer 파일입니다. </footer> </body> </html>
application/views/test.php
<h2>여기는 Views 밑에 있는 test.php 파일입니다.</h2>
application/views/some.php
<h2> views 밑에 some.php 파일입니다. </h2> <?=$id?>
그리고 저번에 작성한 Controller인 test.php를 다음과 같이 수정하였습니다.
application/controller/test.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Test extends CI_Controller { public function index() { $this->load->view('header'); $this->load->view('test'); $this->load->view('footer'); } public function Some($parameter) { $this->load->view('header'); $this->load->view('some',array('id'=>$parameter)); $this->load->view('footer'); } } ?>
/index.php/test/ 로 접속 했을 때 화면
/index.php/test/some/1 로 접속했을 때 화면
View로 자료값을 동적으로 넘길때에는 Some 함수를 참고 하시면 됩니다.
View의 2번째 인자를 array형식 또는 Object 형식으로 보내주면 됩니다.
다차원 배열을 이용해 더 멋진 값들을 넘길 수도 있습니다.
※참고자료
Opentutorial - 생활코딩 Controller 편 : http://opentutorials.org/module/327/3826
Codeigniter Manual : http://codeigniter-kr.org/user_guide_2.1.0/general/views.html
#제 블로그 보다 Opentutoril의 생활코딩에 올라온 자료가 더 좋습니다.
공부하면서 정리하는 내용입니다.