2012-06-25 4 views
32

CodeIgniter 컨트롤러 클래스에서 HTTP 메소드를 검색하려면 어떻게해야합니까?CodeIgniter에서 HTTP 메소드를 검색하는 방법

편집 : 는 CodeIgniter의에서 $_SERVER['REQUEST_METHOD']를 사용하는 것보다 다른 방법이 있습니까?

+1

중복 가능성 http://stackoverflow.com/questions/359047/php-detecting-request -Type-get-post-put-or-delete) – Esailija

+0

나는 그것을 알고 있지만 CodeIgniter에서'$ _SERVER' 변수를 사용하는 것이 맞습니까? –

+0

다른 변수를 사용하는 경우 – Esailija

답변

52

감사합니다, 나는 답을 찾았습니다. $this->input->server($index)$_SERVER[$index]과 동일합니다.

방법을 얻으려면 $this->input->server('REQUEST_METHOD')을 사용할 수 있습니다.

UPDATE : method의 사용도 가능 CodeIgniter의 3으로

(감사 Ecir Hana에)입니다 :

echo $this->input->method(TRUE); // Outputs: POST 
echo $this->input->method(FALSE); // Outputs: post 
echo $this->input->method(); // Outputs: post 
4

입력 라이브러리를 사용하여 GET 및 POST를 감지 할 수 있습니다.

$this->input->post() 또는 $this->input->get()

더 많은 정보를 찾을 수 있습니다 : 브랜든에 http://ellislab.com/codeigniter%20/user-guide/libraries/input.html

+6

문서'$ this-> input-> post(); // XSS 필터가없는 모든 POST 항목을 반환합니다. '그래서이 질문에는 실제로 대답하지 않습니다. HTTP 메소드를 감지하는 대신 데이터를 얻습니다. –

+1

(예를 들어 게시) 요청에 데이터가 포함되어 있지 않으면 작동하지 않습니다. – Korri

14

CodeIgniter는 3에서는 method 음 ... 방법을 사용할 수 있습니다 입력 클래스 워드 프로세서

:

echo $this->input->method(TRUE); // Outputs: POST 
echo $this->input->method(FALSE); // Outputs: post 
echo $this->input->method(); // Outputs: post 
([PHP 요청의 유형 (GET, POST가 두거나 DELETE) 검출]의
관련 문제