그냥 간단하게 블로그 게시물 ID에 대한 컨트롤러 인수컨트롤러 인수 또는 세그먼트를 사용해야합니까?
function view($post_id) {
...
}
또는 uri-> 세그먼트
function view() {
...
$post_id = $this->uri->segment(3);
...
}
를 사용해야합니다. 차이점이 있습니까?
그냥 간단하게 블로그 게시물 ID에 대한 컨트롤러 인수컨트롤러 인수 또는 세그먼트를 사용해야합니까?
function view($post_id) {
...
}
또는 uri-> 세그먼트
function view() {
...
$post_id = $this->uri->segment(3);
...
}
를 사용해야합니다. 차이점이 있습니까?
컨트롤러 인수를 사용합니다.
그럼 코드를 옮겨서 서브 디렉토리에 넣어야한다면 여전히 작동 할 것입니다. 세그먼트 메소드에서는 그렇지 않습니다.
아니오이 경우에는 차이가 없습니다. 가능한 경우 Controll Argument를 사용하십시오. 그것은 당신이 더 많은 경로를 엉망으로 만들고 컨트롤러 파일을 움직일 수있게 해줍니다.
uri를 사용하려면 $this->uri->rsegment(3);
을 사용하는 것이 좋습니다. 왜냐하면 rsegment에 영향을주지 않고 경로를 바인딩 할 수 있기 때문입니다.
CodeIgniter의 가장 좋은 점은 원하는 솔루션을 선택하는 것입니다. 인수를 사용하는 것이 더 좋기 때문에 url의 값이 함수를 살펴 보지 않고 함수에 어떻게 영향을 미치는지 신속하게 이해할 수 있습니다. 나는 그 값들을 맨 위에서 본다. 당신이 오류 메시지를 생성 두려워 경우
대신
function view($post_id = NULL) {
...
}
로 설정하는 것이 좋습니다. post_id
없이 URL에 액세스하면 오류를 방지 할 수 있습니다.
유익한 부분은 유용하지만, 어떤 방법으로 세그먼트를 옮기거나 재배치해야한다는 것을 알게되면 엉덩이에 큰 고통이됩니다. 의미가있는 곳에 사용하십시오.이 경우 포스트 변수가 더 적합합니다. –
erm .... 세그먼트에 맞게 경로를 다시 지정하면됩니다. 나는 여기서 무엇이 너무 복잡하게 보이지 않는다. – itachi
re-routing에는 노력이 필요합니다. 컨트롤러 인수를 사용하면 작동하는 것입니다. – Rooneyl