rapidwebltd/php-google-contacts-v3-api

PHP 库用于 Google Contacts API (v3)

v2.0.0 2017-10-13 08:29 UTC

This package is auto-updated.

Last update: 2024-09-24 09:21:48 UTC


README

Packagist

PHP 库用于 Google Contacts API (v3)

💡 注意:如果您正在启动一个新项目,我们强烈建议您使用我们的 PHP Google People API 包。它比这个包功能更强大,并使用更新的 API,可能支持时间更长。

安装 & 依赖

可以使用 composer 安装此包及其依赖。

只需运行 composer require rapidwebltd/php-google-contacts-v3-api

设置

  1. 安装所需的依赖项。请参阅上面的 '依赖' 部分。
  2. 复制或重命名 .config_blank.json.config.json。注意文件名开头的点 (.)。
  3. .config.json 中填写 clientIDclientSecretredirectUri
  • 请注意,redirectUri 应配置为指向 redirect-handler.php 文件。
  • clientIDclientSecret 可在 Google 开发者控制台找到,地址为 https://console.developers.google.com/,在 'APIs & auth' -> 'Credentials' 下,启用 Contacts API 后。
  1. 在网页浏览器中转到 authorise-application.php。这应该会提供一个 URL 来授权您的应用程序访问 Google Contacts。
  2. 转到上一步提供的授权 URL。
  3. 接受页面上的请求的权限。然后您应该被重定向回 redirect-handler.php 文件。
  4. redirect-handler.php 文件生成的页面应提供刷新令牌。将其复制到您的 .config.json 中。
  5. 设置完成!

使用方法

在安装库并完成设置和账户关联步骤后,您可以开始使用库。

如果您的框架没有这样做,请记住在您想要使用此库的任何页面上包含并引入 vendor/autoload.php 文件。

检索 Google Contacts

以下代码将从关联的 Google 账户检索所有联系人。

$contacts = rapidweb\googlecontacts\factories\ContactFactory::getAll();

var_dump($contacts);

ContactFactory::getAll() 方法将返回一个 Contact 对象数组。联系人的详细信息将作为这些对象的公共成员变量可用。

每个 Contact 对象中包含的 selfURL 是此特定联系人的唯一引用。如果您将来需要检索特定的联系人,您需要存储此 selfURL

要检索特定联系人(通过其 selfURL),请使用以下代码。

$selfURL = "...";

$contact = rapidweb\googlecontacts\factories\ContactFactory::getBySelfURL($selfURL);

var_dump($contact);

ContactFactory::getBySelfURL 方法将返回一个单个的 Contact 对象。

Google 联系人属性按以下方式访问。

$selfURL = "...";

$contact = rapidweb\googlecontacts\factories\ContactFactory::getBySelfURL($selfURL);

echo $contact->name;
echo $contact->phoneNumber;
echo $contact->email;
echo $contact->content;

更新现有的 Google Contacts

使用此库更新 Google Contacts 采用非常面向对象的方式。

您必须首先使用前面提到的方法之一检索一个 Contact 对象。然后您可以修改联系人对象的公共成员变量。要将这些更改保存回 Google Contacts 服务,您然后将修改后的对象传递给 ContactFactory::submitUpdates($contact) 方法。

以下代码演示了完整的过程:获取联系人,修改它并提交更新。

$selfURL = "...";

$contact = rapidweb\googlecontacts\factories\ContactFactory::getBySelfURL($selfURL);

var_dump($contact);

$contact->name = 'Test';
$contact->phoneNumber = '07812363789';
$contact->email = 'test@example.com';
$contact->content = 'Note for example';

$contactAfterUpdate = rapidweb\googlecontacts\factories\ContactFactory::submitUpdates($contact);

var_dump($contactAfterUpdate);

创建新的Google联系人

创建新的Google联系人非常简单。只需调用ContactFactory::create($name, $phoneNumber, $emailAddress)方法,传入适当的参数。此方法将返回创建的联系人作为Contact对象,包括其新分配的selfURL

$name = "Frodo Baggins";
$phoneNumber = "06439111222";
$emailAddress = "frodo@example.com";
$note = "Note for example";

$newContact = rapidweb\googlecontacts\factories\ContactFactory::create($name, $phoneNumber, $emailAddress, $note);

配置文件覆盖

每个方法都有一个可选参数用于配置文件覆盖。当你想同时使用多个Google账户时非常有用。

$customConfig = (object) array(
    'clientID' => '<clientId which you get according to setup above>',
    'clientSecret' => '<clientSecret which you get according to setup above>',
    'redirectUri' => '<your redirect uri>',
    'developerKey' => '<developer key>',
    'refreshToken' => '<refresh token specific for google account>'
);

$contacts = ContactFactory::getAll($customConfig);

你必须定义所有变量,因为原始配置将被完全忽略。更准确地说,它甚至可以不存在。

示例

查看以下文件,了解如何检索联系人的基本示例。它们也可以用来确保你已将Google账户与库相关联。

  • test.php
  • test_individual.php