You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

不使用Composer,通过PHP连接GA4 Google Analytics Data API及Google客户端

无需Composer使用Google API PHP客户端调用API获取统计数据

步骤1:解压客户端包

把你下载的Google API PHP客户端ZIP包,解压到PHP项目的合适目录下(比如创建google-client子目录存放所有解压文件)。

步骤2:添加类自动加载逻辑

因为没有用Composer,需要手动处理类的加载。客户端的类遵循PSR-4规范,你可以在代码开头添加以下自动加载函数:

spl_autoload_register(function ($className) {
    $className = ltrim($className, '\\');
    $fileName  = '';
    $namespace = '';
    if ($lastNsPos = strrpos($className, '\\')) {
        $namespace = substr($className, 0, $lastNsPos);
        $className = substr($className, $lastNsPos + 1);
        $fileName  = str_replace('\\', DIRECTORY_SEPARATOR, $namespace) . DIRECTORY_SEPARATOR;
    }
    $fileName .= str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php';
    
    // 替换成你的客户端src目录实际路径
    $clientSrcPath = __DIR__ . '/google-client/src/';
    if (file_exists($clientSrcPath . $fileName)) {
        require $clientSrcPath . $fileName;
    }
});

步骤3:准备API凭据

  1. 登录Google Cloud控制台,创建项目并启用你需要的统计类API(比如Google Analytics API)。
  2. 创建服务账号,生成并下载JSON格式的密钥文件,将其放到项目目录中(注意:不要把密钥文件放在Web可直接访问的目录,避免泄露)。

步骤4:编写API调用代码

以下是一个调用Google Analytics获取基础统计数据的示例(根据你需要的API调整对应服务类):

<?php
// 先引入自动加载函数(上面步骤2的代码)
spl_autoload_register(function ($className) {
    $className = ltrim($className, '\\');
    $fileName  = '';
    $namespace = '';
    if ($lastNsPos = strrpos($className, '\\')) {
        $namespace = substr($className, 0, $lastNsPos);
        $className = substr($className, $lastNsPos + 1);
        $fileName  = str_replace('\\', DIRECTORY_SEPARATOR, $namespace) . DIRECTORY_SEPARATOR;
    }
    $fileName .= str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php';
    
    $clientSrcPath = __DIR__ . '/google-client/src/';
    if (file_exists($clientSrcPath . $fileName)) {
        require $clientSrcPath . $fileName;
    }
});

// 初始化Google客户端
$client = new Google\Client();
$client->setApplicationName('你的应用名称');
// 加载服务账号密钥文件
$client->setAuthConfig(__DIR__ . '/your-service-account-key.json');
// 设置API权限范围(以Analytics只读权限为例)
$client->addScope(Google\Service\Analytics::ANALYTICS_READONLY);

// 创建Analytics服务实例
$analytics = new Google\Service\Analytics($client);

// 调用API获取数据
try {
    $profileId = 'ga:你的视图ID'; // 替换成你的实际视图ID
    $startDate = '7daysAgo';
    $endDate = 'today';
    $metrics = 'ga:sessions,ga:pageviews'; // 要获取的统计指标

    $results = $analytics->data_ga->get(
        $profileId,
        $startDate,
        $endDate,
        $metrics
    );

    // 输出统计结果
    if ($results->getRows()) {
        echo '<h3>站点统计数据</h3>';
        echo '<ul>';
        foreach ($results->getRows() as $row) {
            echo "<li>会话数:{$row[0]},页面浏览数:{$row[1]}</li>";
        }
        echo '</ul>';
    } else {
        echo '未获取到统计数据';
    }
} catch (Exception $e) {
    echo "API调用出错:{$e->getMessage()}";
}
?>

注意事项

  • 确保服务器PHP版本满足客户端要求(建议PHP 7.4及以上)。
  • 服务器需开启openssl、curl等扩展,否则无法正常调用HTTPS API。
  • 若使用GA4(Google Analytics 4),需替换为Google\Service\AnalyticsData服务类,并调整API调用逻辑。
  • 密钥文件权限需设置为仅服务器可读,禁止公开访问。

内容的提问来源于stack exchange,提问作者user8519630

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 12:57:27