예를 들면 view를 통해서 javascript나 css를 불러오고 싶은데 ci 주소 특성상 일반적인 주소 접근으로는 어렵다.
폴더 계층으로 보면
system/
application/
assets/
css/
images/
이렇게 위치한 상태의 assets 폴더를 사용하는 방법이다.
1. 우선 application/helpers 폴더 안에 다음과 같은 내용을 적고 utility_helper.php 파일로 저장한다.
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
function assets_url() {
return base_url() . 'assets/';
}
?>
2. application/config/autoload.php 파일을 열고 $autoload['helper'] 의 배열에 utility를 추가시킨 후 저장한다.
$autoload['helper'] = array('url', 'file', 'utility');
3. application/config/routes.php 파일을 열고 맨 뒤에 다음과 같은 내용을 적고 저장한다.
$route['assets/(:any)'] = 'assets/$1';
4. 주소에서 접근을 하기 위해 .htaccess 파일을 열고 조건 하나를 더 추가시킨다.
RewriteCond $1 !^(index\.php|images|assets|captcha|data|include|uploads|robots\.txt)
이렇게 했다면 view 안에서 assets 폴더를 통해서 접근하고자 할 때 다음과 같이 이용 가능하다.
<link rel="stylesheet" type="text/css" href="<?php echo assets_url();?>css/style.css">
'프로그래밍 > Codeigniter' 카테고리의 다른 글
[PHP] 코드이그나이터(CI) config.php 설정 (0) | 2016.08.28 |
---|---|
[PHP] 코드이그나이터(CI) 에서 index.php 없애기 (0) | 2016.08.28 |