저는 PHP에 대한 지식이 아주 적은 Java 개발자입니다. MVC 웹 어플리케이션을 Java로 개발할 때 자주 사용합니다. CodeIgniter 2.1.3을 사용하는 PHP 프로젝트를 작성해야합니다.이 CodeIgniter 컨트롤러 클래스는 정확히 어떻게 작동합니까?
컨트롤러가 작동하는 방식에 대해 약간의 의문이 생깁니다. CodeIgniter.
1) Spring MVC에서 일부 애플릿 메서드가있는 컨트롤러 클래스가 있는데, 각 메서드는 특정 HTTP 요청 (메서드에서 처리하는 URL을 정의하는 주석)을 처리하고 표시해야하는보기의 이름을 반환합니다. https://www.codeigniter.com/userguide3/general/controllers.html#what-is-a-controller
은 그래서 에 CodeIgniter를는 단일 URL을 처리하는 클래스 인 것을 이해하는 것 같다 CodeIgniter의의 공식 문서를 읽기
는이 프레임 워크의 논리는 매우 다르다는 것을 나에게 보인다 클래스 이름과 같은 이름의 응용 프로그램. 맞습니까?
class garanzieValoreFlex extends CI_Controller {
.....................................................
.....................................................
.....................................................
function __construct() {
parent::__construct();
$this->load->helper(array('form', 'url'));
$this->load->library(array('form_validation','session'));
}
public function reset() {
$this->session->unset_userdata("datiPreventivo");
$this->load->view('garanziavalore/garanzie_valore_questionario_bootstrap',array());
}
public function index() {
$this->load->model('Direct');
$flagDeroga = "true" ;
$this->session->userdata("flagDeroga");
$data = $this->session->userdata("datiPreventivo");
$this->load->model('GaranzieValoreFlexModel');
$data = $this->session->userdata("datiPreventivo");
$this->load->model('GaranzieValoreFlexModel');
$this->load->view('garanziavalore/index_bootstrap',$data);
}
public function back() {
$this->load->model('Direct');
$flagDeroga = "true" ;
$this->session->userdata("flagDeroga");
$data = $this->session->userdata("datiPreventivo");
$this->load->model('GaranzieValoreFlexModel');
//$this->load->view('garanziavalore/garanzie_valore_questionario_bootstrap',$data);
$this->load->view('garanziavalore/index_tornaIndietro_bootstrap',$data);
}
.....................................................
.....................................................
.....................................................
}
그래서,이 URL을 향한 기본적으로이 컨트롤러 핸들에만 HTTP 요청, 이해가 무엇에서 : http://MYURL/garanzieValoreFlex
는 그래서이 클래스가 있습니다.
그래서에서 나는 이전 URL에 액세스 할 때 수행 방법이 선으로하는 지수() 이해 무엇을 :
$this->load->view('garanziavalore/index_bootstrap',$data);
가 garanziavalore/index_bootstrap.php 페이지를 표시하는 나는 디렉토리 내 prohect의 조회수 (가 전망에 디렉토리해야하는 표준입니다?)
가 내 추론인가에 발견 옳은?
그렇다면 나는 ID로 통과 뷰를로드하고 또한 $ I 페이지에 표시 할 수있는 데이터를 포함하는 모델이라고 생각 변수는,이 변수에 의해 검색된 데이터 :
$data = $this->session->userdata("datiPreventivo");
이 라인은 정확히 무엇입니까?
마지막으로 의심의 여지는 다시 다른 을 관련() 나는 이전 컨트롤러에서 발견 방법은 완전히 사용자 정의하기 전에이 응용 프로그램 작업을 개발자가 정의 CodeIgniter의 CI_Controller 클래스 또는 무언가의 방법이다 나를?