이 글은 주로 thinkphp의 검색 기록 기능을 구현하는 방법을 소개합니다. 이는 매우 실용적인 기술입니다. 필요한 사람들은 이를 참조할 수 있습니다. thinkphp의 검색 기록 기능 구현 방법 참고용으로 공유하세요. 구체적인 구현 방법은 다음과 같이 분석됩니다.
이력 탐색 기능은 쿠키 기능을 사용하여 사용자 정보를 기록하고 로컬에 저장하기만 하면 됩니다. 이 방식으로 쿠키에 저장된 값만 읽으면 됩니다. thinkphp.Historical 함수 예제를 기반으로 한 브라우저입니다.
브라우저와 마찬가지로 방문한 페이지를 기록할 수 있어 시간을 단축할 수 있습니다. 다음으로 검색 기록 기능을 구현합니다.
1. 검색 데이터를 기록해야 하는 제품 또는 뉴스 페이지에서 쿠키가 저장해야 하는 정보를 기록합니다. 예를 들어 다음 코드 줄에 페이지 ID, 제품 이름, 가격, 썸네일, 및 cookie_history에 대한 URL입니다.
cookie_history($id,$info['title'],$info['price'],$info['pic'],$thisurl);
2. function.php에 코드 추가
/** +---------------------------------------------------------- * 浏览记录按照时间排序 +---------------------------------------------------------- */ function my_sort($a, $b){ $a = substr($a,1); $b = substr($b,1); if ($a == $b) return 0; return ($a > $b) ? -1 : 1; } /** +---------------------------------------------------------- * 网页浏览记录生成 +---------------------------------------------------------- */ function cookie_history($id,$title,$price,$img,$url){ $dealinfo['title'] = $title; $dealinfo['price'] = $price; $dealinfo['img'] = $img; $dealinfo['url'] = $url; $time = 't'.NOW_TIME; $cookie_history = array($time => json_encode($dealinfo)); //设置cookie if (!cookie('history')){//cookie空,初始一个 cookie('history',$cookie_history); }else{ $new_history = array_merge(cookie('history'),$cookie_history);//添加新浏览数据 uksort($new_history, "my_sort");//按照浏览时间排序 $history = array_unique($new_history); if (count($history) > 4){ $history = array_slice($history,0,4); } cookie('history',$history); } } /** +---------------------------------------------------------- * 网页浏览记录读取 +---------------------------------------------------------- */ function cookie_history_read(){ $arr = cookie('history'); foreach ((array)$arr as $k => $v){ $list[$k] = json_decode($v,true); } return $list; }
3. 검색 기록을 표시해야 하는 페이지에 정보를 출력합니다.
$this->assign('history',cookie_history_read());
volist를 사용하여 템플릿에 표시하면 됩니다.
위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되었으면 좋겠습니다. 더 많은 관련 내용은 PHP 중국어 홈페이지를 주목해주세요!
관련 권장사항:
ThinkPHP를 사용하여 썸네일 생성 및 표시thinkPHP의 일괄 삭제 구현 방법에 대해getlist 메서드를 사용하여 데이터 검색 기능 구현에 대한 ThinkPHP의 분석에 대해위 내용은 thinkphp가 검색 기록 기능을 구현하는 방법에 대해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!