2016-09-13 9 views
0

아래 코드를 부모 :: _ 구문에서 어떻게 말할 수 있으며 개별 자식 함수로 호출 할 수 있습니까? 부모 구조 내부CodeIgniter 부모 선언

 /*bootstrap classes*/ 
     $pag_config ['full_tag_open'] = "<ul class='pagination'>" ; 
     $pag_config ['full_tag_close'] ="</ul>" ; 
     $pag_config ['num_tag_open'] = '<li>' ; 
     $pag_config ['num_tag_close'] = '</li>' ; 
     $pag_config ['cur_tag_open'] = "<li class='disabled'><li class='active'><a href='#'>" ; 
     $pag_config ['cur_tag_close'] = "<span class='sr-only'></span></a></li>" ; 
     $pag_config ['next_tag_open'] = "<li>" ; 
     $pag_config ['next_tagl_close'] = "</li>" ; 
     $pag_config ['prev_tag_open'] = "<li>" ; 
     $pag_config ['prev_tagl_close'] = "</li>" ; 
     $pag_config ['first_tag_open'] = "<li>" ; 
     $pag_config ['first_tagl_close'] = "</li>" ; 
     $pag_config ['last_tag_open'] = "<li>" ; 
     $pag_config ['last_tagl_close'] = "</li>" ; 
+0

나는 당신의 질문을 완전히 이해할 수는 없지만, 생성자와이 함수를 자식 함수 내에서 필요한 다른 곳에서 호출하는 것보다 코드를 별도의 함수로 선언 할 수 있습니까? – Skriptotajs

+0

아니요, 같은 파일에 있습니다. 그 코드를 부모 구문 중 하나로 작성해야합니다. 그래서 같은 파일에 여러 자식 함수를 사용하기 위해, 나는 그것을 모두 다시 쓸 필요가 없습니다 ... – Mauliardiwinoto

+0

그래서이 배열을 생성자에서 정의한 다음 하위 함수에서 동일한 배열에 액세스하고 싶습니까? – Skriptotajs

답변

0

:

 $this -> pag_config = array (
     /*bootstrap classes*/ 
     'full_tag_open' => "<ul class='pagination'>" , 
     'full_tag_close' => "</ul>" , 
     'num_tag_open' => '<li>' , 
     'num_tag_close' => '</li>' , 
     'cur_tag_open' => "<li class='disabled'><li class='active'><a href='#'>" , 
     'cur_tag_close' => "<span class='sr-only'></span></a></li>" , 
     'next_tag_open' => "<li>" , 
     'next_tagl_close' => "</li>" , 
     'prev_tag_open' => "<li>" , 
     'prev_tagl_close' => "</li>" , 
     'first_tag_open' => "<li>" , 
     'first_tagl_close' => "</li>" , 
     'last_tag_open' => "<li>" , 
     'last_tagl_close' => "</li>" , 
    ) ; 

내부 하위 기능 :

 $pag_config ['total_rows'] = count ($to_count) ; 
     $pag_config ['per_page'] = $to_show ; 
     $pag_config ['uri_segment'] = 3 ; 
     $pag_config ['base_url'] = base_url().'prcsys/overall' ; 

     $merge_paginate = array_merge($pag_config,$this -> pag_config); 
     $this -> pagination -> initialize ($merge_paginate) ; 
1

사용 $this는 클래스 변수에 액세스 할 수 있습니다. 예를 들어 위

class YourClass extends CI_Controller { 

    function __construct() { 
     parent::__construct(); 

     $this->pag_config = array(); 
     $this->pag_config['full_tag_open'] = "<ul class='pagination'>" ; 
     $this->pag_config['full_tag_close'] ="</ul>" ; 
     $this->pag_config['num_tag_open'] = '<li>' ; 
     $this->pag_config['num_tag_close'] = '</li>' ; 
     $this->pag_config['cur_tag_open'] = "<li class='disabled'><li class='active'><a href='#'>" ; 
     $this->pag_config['cur_tag_close'] = "<span class='sr-only'></span></a></li>" ; 
     $this->pag_config['next_tag_open'] = "<li>" ; 
     $this->pag_config['next_tagl_close'] = "</li>" ; 
     $this->pag_config['prev_tag_open'] = "<li>" ; 
     $this->pag_config['prev_tagl_close'] = "</li>" ; 
     $this->pag_config['first_tag_open'] = "<li>" ; 
     $this->pag_config['first_tagl_close'] = "</li>" ; 
     $this->pag_config['last_tag_open'] = "<li>" ; 
     $this->pag_config['last_tagl_close'] = "</li>" ; 
    } 

    function childFunction() { 
     echo $this->pag_config['full_tag_open']; 
    } 

} 

은 당신이 무엇을 요구에 더 비슷하지만 훨씬 청소기 보이기 때문에, 속성으로 그것을 정의하는 것이 좋습니다 것입니다.

class YourClass extends CI_Controller { 

    private $pag_config = array (
     /*bootstrap classes*/ 
     'full_tag_open' => "<ul class='pagination'>" , 
     'full_tag_close' => "</ul>" , 
     'num_tag_open' => '<li>' , 
     'num_tag_close' => '</li>' , 
     'cur_tag_open' => "<li class='disabled'><li class='active'><a href='#'>" , 
     'cur_tag_close' => "<span class='sr-only'></span></a></li>" , 
     'next_tag_open' => "<li>" , 
     'next_tagl_close' => "</li>" , 
     'prev_tag_open' => "<li>" , 
     'prev_tagl_close' => "</li>" , 
     'first_tag_open' => "<li>" , 
     'first_tagl_close' => "</li>" , 
     'last_tag_open' => "<li>" , 
     'last_tagl_close' => "</li>" , 
    ) ; 

    function childFunction() { 
     echo $this->pag_config['full_tag_open']; 
    } 

}