제목 | 게시판 관련 질문드립니다. | ||
---|---|---|---|
글쓴이 | ci_chobo | 작성시각 | 2012/08/09 10:51:26 |
|
|||
ci세상님께서 올려주셨던 자료실에있는 게시판 관련 자료 질문입니다public function seg_value($key,$segment=NULL) { if($segment == NULL) { $segment = $this->uri->segment_array(); } $this->seg_exp = array_values($segment); $arr_key = array_keys($this->seg_exp, $key); print_r($arr_key); if($arr_key) { $arr_val = $arr_key[0] + 1; } else { $arr_val = 200; } if(count($this->seg_exp) > $arr_val) { return $this->seg_exp[$arr_val]; } } public function seg_index($key,$segment=NULL) { if($segment == NULL) { $segment = $this->uri->segment_array(); } $this->seg_exp = array_values($segment); $arr_key = array_keys($this->seg_exp, $key); $tot =count($arr_key); if($tot > 0) { $arr_val = $arr_key[0] + 2; return $arr_val; } else { return ""; } }다른부분은 제가 생각하고 참고해서 추가하거나 변형한 부분이 있긴 한데 그거랑은 별개로 이 부분의 코드가 이해가 잘 가질 않습니다. seg_value에서 $arr_key를 print_r로 찍어보면 Array() Array() Array() Array() Array() Array()이렇게 찍힙니다. 검색을 활성화해서 찍어보면 (검색값이 2일 때) Array ( [0] => 2 ) Array ( [0] => 4 ) Array ( [0] => 2 ) Array ( [0] => 4 ) Array ( [0] => 2 ) Array ( [0] => 4 ) Array ( ) Array ( [0] => 2 ) Array ( [0] => 4 ) 이렇게 나옵니다. 뒤에 4라고 나오는게 글의 갯수인거 같아서 확인해보니 글의 갯수는 3이구요. (print_r은 임의로 추가했다가 지웠습니다.) if($arr_key) { $arr_val = $arr_key[0] + 1; } else { $arr_val = 200; } if(count($this->seg_exp) > $arr_val) { return $this->seg_exp[$arr_val]; }그리고 부분이 $arr_val = 200을 해준 부분이나.. 그런부분이 이해가 잘 가질 않습니다.. 전체적으로 다른 코드는 찾아보고 계속 보다보니 이해가됐는데 이부분은 봐도 이해가 잘 안가네요... 자세하게나 간략하게라도 설명좀 해주셨으면 좋겠습니다. (프로그램적 오류는 없습니다) |
|||
다음글 | css layout design을 기본 제공하는 사이트 (4) | ||
이전글 | 뜬금없는 질문인데요..sync async (8) | ||
변종원(웅파)
/
2012/08/09 11:19:46 /
추천
0
|
ci_chobo
/
2012/08/09 11:37:44 /
추천
0
seg_value 부분에
{ $arr_val = $arr_key [0] + 1; } else { $arr_val = 200; } |
변종원(웅파)
/
2012/08/09 17:41:58 /
추천
0
해당하는 키가 있으면 키 다음의 배열순서를 반환하고
없으면 200을 줘서 없는 값을 나타내게 한겁니다. 통상적으로 개발할때 200번째 세그먼트가 있을 수 없을테니까요. 해당 라인에서 값들 찍어보세요. ^^ |
주소를 배열로 변환하고 그 배열에서 $key에 해당하는 값을 반환하는 함수입니다.