ホームページ > PHPフレームワーク > ThinkPHP > ThinkPHP6 で訪問数をカウントする方法

ThinkPHP6 で訪問数をカウントする方法

WBOY
リリース: 2023-06-21 10:55:16
オリジナル
1668 人が閲覧しました

Web 開発のプロセスにおいて、Web サイトの訪問数をカウントすることは非常に重要な指標です。訪問数をカウントすることでウェブサイトの訪問状況を把握し、ウェブサイトの改善や最適化のためのデータサポートやガイダンスを提供します。 ThinkPHP6 では、さまざまな方法を使用して Web サイト訪問に関する統計を実装できます。

  1. ミドルウェアを使用して訪問数をカウントする

ThinkPHP6 では、ミドルウェアは多くの実用的な機能を提供する非常に強力な機能です。ウェブサイトのトラフィック統計を実装するミドルウェアを作成できます。具体的な実装方法は以下のとおりです。

(1) ミドルウェア ファイルの作成

以下のコマンドを実行することで、app/middleware ディレクトリに AccessCount.php ミドルウェア ファイルを作成できます。 #

php think make:middleware AccessCount
ログイン後にコピー

AccessCount.php ファイルには、次のコードを記述できます。

<?php

namespace appmiddleware;

use Closure;

class AccessCount
{
    public function handle($request, Closure $next)
    {
        // 统计访问量
        $access_count = cache('access_count') ?: 0;
        $access_count++;
        cache('access_count', $access_count);

        return $next($request);
    }
}
ログイン後にコピー

上記のコードでは、Web サイトの訪問数をカウントすることを主な機能とする単純なミドルウェアを記述しました。ミドルウェアのハンドルメソッドでは、アクセスデータをキャッシュから読み込み、アクセス数を1増やし、新しいアクセス値をキャッシュに保存します。

(2) ミドルウェアの登録

AccessCount.php ミドルウェアを app/middleware.php ファイルに登録する必要があります。コードは次のとおりです:

return [
    ppmiddlewareAccessCount::class,
];
ログイン後にコピー

(3 ) 表示アクセス量

訪問データはキャッシュに保存されます。次のコードを通じて必要に応じて呼び出すことができます:

$access_count = cache('access_count');
echo '网站访问量:' . $access_count;
ログイン後にコピー

    Redis を使用して訪問をカウントします
ミドルウェアを使用して Web サイトの訪問数をカウントすることに加えて、Redis を使用して実装することもできます。 Redis は、さまざまなデータの保存に使用できる高速なインメモリ データベースです。 ThinkPHP6 では、Redis を使用して Web サイトのトラフィック統計を実装できます。

具体的な実装方法は以下のとおりです。

(1) Redisの設定

Redisデータベースの接続情報をconfig/database.phpファイルに設定する必要があります。

'redis' => [
    // 数据库类型
    'type' => 'redis',
    // 服务器地址
    'hostname' => '127.0.0.1',
    // 服务器端口
    'port' => 6379,
    // 数据库名
    'database' => 0,
    // 密码
    'password' => '',
    // 连接参数
    'params' => [
        Redis::OPT_CONNECT_TIMEOUT => 5,
    ],
],
ログイン後にコピー

(2) 訪問の統計

次のコードを通じて Web サイトの訪問をカウントできます:

$redis =     hinkacadeCache::store('redis')->handler();
$access_count = $redis->incr('access_count');
ログイン後にコピー

上記のコードRedis の incr メソッドを使用して Web サイトの訪問数をカウントします。数値を 1 増やして、新しい訪問数を返します。

(3) 訪問数を確認する

訪問数は Redis に保存されており、必要に応じて次のコードを使用して呼び出すことができます:

$redis =     hinkacadeCache::store('redis')->handler();
$access_count = $redis->get('access_count');
echo '网站访问量:' . $access_count;
ログイン後にコピー

summary

ミドルウェアを使用するか Redis を使用するかに関係なく、Web サイトのトラフィック統計を実装するのは非常に簡単です。これにより、Webサイトの訪問状況を把握できるだけでなく、Webサイトの運用や最適化に貴重な参考データを提供することができます。ただし、Web サイトのトラフィック統計では、トラフィックがスワイプされないようにデータの精度にも注意を払う必要があります。

以上がThinkPHP6 で訪問数をカウントする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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