본문 바로가기

삽질

CakePHP paginator 에서 순서대로 번호를 보여주기


CakePHP의 paginator는 굉장히 훌륭합니다. ㅠ_ㅠ 번거로운 페이징 작업을 아주 간단하게 해주죠.

필요해서 리스트에서 번호를 보여줄때 순서대로 번호를 매기는 것을 방법을 생각했습니다.
$paging = $paginator->params();
$vid = intval($paging['count']) - (intval($paging['page']) - 1) * intval($paging['options']['limit']);

foreach ($datas as $data):

....

    $vid--; 
endforeach;

View에서 paginator->params([Model]) 을 호출하면 paginator의 옵션과 설정된 값들을 배열로 리턴합니다.

그중에서 전체글수, 현재 페이지, 각 페이지당 글 수를 가져와서 간단한 연산을 통해 현재 페이지의 처음 번호를 구해옵니다.

여기서부터 하나씩 싹싹 빼가면 순서대로 번호가 매겨집니다.