ホームページ > バックエンド開発 > PHPチュートリアル > PHPでユーザーの閲覧履歴を記録する方法

PHPでユーザーの閲覧履歴を記録する方法

墨辰丷
リリース: 2023-03-29 19:14:02
オリジナル
2253 人が閲覧しました

この記事では主に PHP がユーザーの閲覧履歴を記録する方法を紹介します。興味のある方はぜひ参考にしてください。

コード例:

/**
   * 将用品id存入Cookie中
   *
   * @param $id
   * @return bool
   */
  public function setCookieRecord($id){
    $data = null;
    if(!isset($_COOKIE['RecordLuHuiDUDU'])){
      if(!empty($id)) {
        $data[0] = array(
          'id' = $id,
          'time' = date('Y-m-d H:i:s', time())
        );
      }else{
        return false;
      }
    }else{
      if(!empty($id)) {
        $data = $_COOKIE['RecordLuHuiDUDU'];
        setcookie('RecordLuHuiDUDU','',time()-3600*24*30);
        $data = json_decode($data, true);
        $num = count($data);
        //判断是否重复
        $judge = false;
        foreach($data as $index => $value){
          if($data[$index]['id'] == $id){
            $data[$index]['time'] = date('Y-m-d H:i:s', time());
            $judge = true;
          }
        }
 
        if($judge){
          setcookie('RecordLuHuiDUDU',json_encode($data),time()+3600*24*30);
          return true;
        }
 
        if($num == 10){
          for($i = 0; $i < 9; $i++){ $data[$i] = $data[$i+1]; } $data[9] = array( &#39;id&#39; => $id,
            &#39;time&#39; => date(&#39;Y-m-d H:i:s&#39;, time())
          );
        }
        if($num <10){ $data[$num] = array( &#39;id&#39; => $id,
            &#39;time&#39; => date(&#39;Y-m-d H:i:s&#39;, time())
          );
        }else {
          return false;
        }
      }
    }
    setcookie(&#39;RecordLuHuiDUDU&#39;,json_encode($data),time()+3600*24*30);
    return true;
  }
ログイン後にコピー

概要: 上記がこの記事の全内容です。皆様の学習に役立つことを願っています。

関連する推奨事項:

PHPでATコマンドを送信する方法とコード例

php配列関数array_walkの使い方と例

phpクイックソートの原理と実装方法と分析例

以上がPHPでユーザーの閲覧履歴を記録する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート