CodeIgniter에서 웹을 출력하는 방식은 MVC패턴에 기인한다.
즉 view를 컨트롤러에 등록시키고 routes에서 경로를 정해서 라우트 시키는 방식이다.
이 방식을 일연의 과정으로 한번 표현하면 아래와 같다.
1.View 파일의 제작
View파일을 php로 제작하게 된다.
<?php //test_view.php ?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<b>Hello Kukaro!</b>
</body>
</html>
내가 보여주고자 하는 파일을 만드는데 그 양식은 전형적인 php파일 양식을 따른다.
이 파일은 위치시켜야할 경로는 아래와 같다. application/views의 하위에 위치 시킨다.
2.Controller 파일의 제작
<?php //Test.php
class Test extends CI_Controller {
public function index()
{
$this->load->view('test_view');
}
}
Controller파일을 위와같이 제작한다.
Controller는 Class형태의 php파일로 제작하며 이는 CI_Controller를 상속하여야한다.
그리고 위와같이 index메소드안에서 $this->load->view();메소드안에 아까 만든 파일의 이름을 (.php)만 빼고 호출한다.
이 파일을 application->controllers파일 아래에 위치시킨다.
여기서 controllers에 만들어놓은 파일을 바로 url 경로로 접근할 수 있다.
우리가 만든 Test클래스를 바로 호출하는게 가능하다는것.
한번 호출하여 보자.
보면 호출에 성공한걸 알 수 있다.
다만 만약 url을 따로 매핑을 하고싶다면 아래의 방법을 사용해주어야한다.
3.routes.php 설정하기
application->config->routes.php안에 아래의 코드를 추가한다.
$route['hi'] = 'test';
여기서 route 괄호 안의 문자열은 자신이 원하는거 아무거나 선언하면 된다.
오른 쪽의 문자열은 자신이 연결하고자 하는 파일을 선언해준다.
아까 만든 Test.php를 연결하자.
이 때 왼쪽에는 모두 소문자로 적어도 무방하다. 그 이유는 대소문자를 가리지 않기 때문이다.
이제 실행을 해보자.
주소창에 아래와 같이 쳐보자.
http://localhost/CI/index.php/hi
제대로 출력되는걸 알 수 있다.
여기서 우리는 test클래스를 hi에 매핑했으나 test로도 접근이 가능하다.
'Programming > PHP-CodeIgniter' 카테고리의 다른 글
[CodeIgniter-04]MVC패턴과 controller (0) | 2018.01.10 |
---|---|
[CodeIgniter-03]database 연동하기 (0) | 2018.01.05 |
[CodeIgniter-02]form으로 get,post 값받고 처리하기 (0) | 2018.01.05 |