| 제목 | class 내부에서 class 이름을 얻는 방법이 있을까요? | ||
|---|---|---|---|
| 글쓴이 | 아로운 | 작성시각 | 2013/08/16 20:42:37 |
|
|
|||
|
CI 사용 6개월인 초보 개발자입니다. 액티브 레코드 사용중에 테이블명을 자동으로 넣는방법을 생각하다가 질문하게 됬는데요, 내용인 즉슨. class User extend CI_model { } 위의 임의 모델안에서 User라는 클래스 명을 자동을 가져오는 것입니다. 클래스명과 테이블명을 동이하게 쓰기 때문에, 가능하다면 작업이 많이 편해질것같아 질문드립니다. 모든 답변자분들께 미리 감사를 드립니다. |
|||
| 다음글 | CI 초보인데, 초기 실행 순서를 잘 모르겠습니다. (1) | ||
| 이전글 | CI 에서 pdo 를 사용할려면 .. (3) | ||
|
kirrie
/
2013/08/16 22:00:49 /
추천
0
http://kr1.php.net/manual/en/function.get-class.php
|
|
한대승(불의회상)
/
2013/08/20 10:53:06 /
추천
0
아로운// 모델을 자동화 하는 좋은 방법을 생각해 내셨군요. ^^
저도 실무에 적용해 봐야 겠습니다. CI는 모델 정의시 첫번째 글자를 대문자로 해야 한다는 것과 모델명이 라이브러리와 혼동이 되거나 충돌 할 수 있다는 부분이 조금 걸리네요. 그래서 이렇게 해 봤습니다. 참고 하세요.
class T1_model extends CI_Model {
private $tbl;
function __construct()
{
parent::__construct();
$this->tbl = str_replace('_model', '', strtolower(get_class($this)));
}
function get_tbl()
{
return $this->tbl;
}
}
그런데 이렇게 해놓고 보니 그냥
class T1_model extends CI_Model {
private $tbl;
function __construct()
{
parent::__construct();
$this->tbl = 't1';
}
function get_tbl()
{
return $this->tbl;
}
}이렇게 하는게 낫지 않을까 하는 생각도 드네요. ^^ |