2014-06-10 8 views
-1

임 이런 식으로 뭔가를 달성 CodeIgniter는 어떻게하는지 정말 궁금 :codeigniter 메소드 구조, 누군가 나를 설명 할 수 있습니까?

$ this-> upload-> do_upload ($ FIELD_NAME)

이 방법 체인처럼 보이지만 그것은 아니다. 이 구조의 구조는 어떻게 OOP에서 명백하게 나타낼 수 있습니까?

나는 간단하지는 않지만 ..?

public function upload() 
{ 
    // stuff 
    return $this; 
} 

public function do_upload() 
{ 
    // stuff 
    return $foo; 
} 

건배!

+1

그냥 읽으면 http://ellislab.com/codeigniter/user-guide/general/creating_libraries.html[link] – Bira

답변

0

컨트롤러에서 라이브러리를로드하면 실제로 장면 뒤에서 이와 같은 작업을 수행 할 수 있습니다.

include 'system/libraries/Upload.php'; 
$this->upload = new CI_Upload(); 

지금 당신은 당신이 내 당신이 실제로 전화하는거야 방법 "> upload-> do_upload() $ this-"를 호출 할 때

, 사용할 준비가 다음을 "$ this-> 업로드"가 도서관.

다른 한편으로, 메소드 체이닝은 메소드가 동일한 객체의 인스턴스를 리턴하게하는 것입니다. GitHub의 CodeIgniter 3에있는 라이브러리 코드에서이를 검토 할 수 있습니다. 대부분의 라이브러리는 이제 메소드 체인을 사용합니다.

관련 문제