您正在查看 Google Photos Library API 的旧版文档。
PHP 客户端库使用入门
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
要开始通过 PHP 客户端库使用 Google Photos Library API,您需要执行以下操作:
在开发环境中设置客户端库。
在此之前,请先启用 API 来配置您的项目
通过 Google API 控制台设置 OAuth 2.0 客户端 ID
您的应用会代表
Google 相册用户。例如,如果您在用户的
Google 相册媒体库或将媒体内容上传到用户的媒体库
Google 相册账号,用户便可通过
OAuth 2.0 协议。
OAuth 2.0 客户端 ID 可让您的应用用户登录账号、进行身份验证
从而使用 Library API。Library API 不支持
服务账号;要使用此 API,用户必须登录到有效的 Google
账号。
启用 API
您必须先为项目启用 Library API,然后才能使用该 API。
- 转到 Google API 控制台。
- 从菜单栏中选择一个项目或创建一个新项目。
- 要打开 Google API 库,请在导航菜单中选择
API 和服务 >媒体库。
- 搜索“Google Photos Library API”。选择正确的结果并点击
启用。
请求 OAuth 2.0 客户端 ID
请按照以下步骤申请 OAuth 客户端 ID 并为其配置 OAuth 客户端 ID
应用。本示例使用的应用将整个 OAuth 流程
由服务器端处理,如我们的示例中所示设置流程可能会有所不同
适用于其他实现场景。
- 转到 Google API 控制台
并选择您的项目。
- 在菜单中选择 API 和服务 >凭据。
- 在凭据页面上,点击创建凭据 >OAuth 客户端 ID。
- 选择您的应用类型。在此示例中,应用类型是
Web 应用。
注册允许您的应用从哪些来源访问 Google API
如下所示:
- 如需识别客户端 ID,请输入名称。
在已获授权的 JavaScript 来源字段中,输入您
应用。此字段不允许使用通配符。
您可以输入多个源,以允许您的应用在不同平台上运行
网域或子网域您输入的网址可用于
发起 OAuth 请求。
以下示例显示了一个本地开发网址(我们的示例使用
localhost:8080
)和一个正式版网址。
http://localhost:8080
https://myproductionurl.example.com
已获授权的重定向 URI 字段是接收
OAuth 2.0 服务器发出的响应请求通常情况下,这包括您的
开发环境,并指向应用中的路径。
http://localhost:8080/auth/google/callback
https://myproductionurl.example.com/auth/google/callback
点击创建。
-
在随即显示的 OAuth 客户端对话框中,下载 JSON 文件
包含您的客户端配置客户详细信息包括
以下:
此 JSON 文件稍后将用于设置
适用于 PHP 的 Google Auth 库,可以与此客户端库结合使用。
在启动访问 Library API 的公共应用之前,
您的应用必须经过 Google 审核。“未经验证的应用”消息出现在
测试您的应用时,该屏幕会展示,直到
经过验证。
设置客户端库
PHP 客户端库可为您处理所有后端 API 调用,并公开
对象,包括一些常见 API 任务的代码示例。
首先,下载并安装适用于 PHP 的 Google Photos Library API 客户端库以及
从 GitHub 获取依赖项。
然后,设置适用于 PHP 的 OAuth2 凭据。
下载选项
使用 Composer
将该库作为依赖项添加到开发环境中。运行
将库添加到您的项目配置中并下载
放入 vendor/
目录。
composer require google/photos-library
或者
克隆
代码库或
下载
tarball。
设置适用于 PHP 的 OAuth2 凭据
此客户端库可与
Google Auth 库
PHP。如需更多信息
请参阅将 OAuth 2.0 与 Google API 客户端库结合使用
PHP。
在设置时使用 auth 库返回的身份验证凭据
PhotosLibraryClient
。
试用一些示例
尝试使用以下代码,使用 PHP 客户端库进行首次 API 调用。
use Google\Auth\Credentials\UserRefreshCredentials;
use Google\Photos\Library\V1\PhotosLibraryClient;
use Google\Photos\Library\V1\PhotosLibraryResourceFactory;
try {
// Use the OAuth flow provided by the Google API Client Auth library
// to authenticate users. See the file /src/common/common.php in the samples for a complete
// authentication example.
$authCredentials = new UserRefreshCredentials( /* Add your scope, client secret and refresh token here */ );
// Set up the Photos Library Client that interacts with the API
$photosLibraryClient = new PhotosLibraryClient(['credentials' => $authCredentials]);
// Create a new Album object with at title
$newAlbum = PhotosLibraryResourceFactory::album("My Album");
// Make the call to the Library API to create the new album
$createdAlbum = $photosLibraryClient->createAlbum($newAlbum);
// The creation call returns the ID of the new album
$albumId = $createdAlbum->getId();
} catch (\Google\ApiCore\ApiException $exception) {
// Error during album creation
} catch (\Google\ApiCore\ValidationException $e) {
// Error during client creation
echo $exception;
}
还有更多
GitHub 上的示例
供您尝试。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-08-29。
[null,null,["最后更新时间 (UTC):2025-08-29。"],[[["\u003cp\u003eTo use the Google Photos Library API with PHP, enable the API, request an OAuth 2.0 client ID, and set up the PHP client library.\u003c/p\u003e\n"],["\u003cp\u003eUsers must sign in with a Google Account as the API does not support service accounts, requiring OAuth 2.0 for authorization.\u003c/p\u003e\n"],["\u003cp\u003eSet up your OAuth2 credentials by configuring a web application in Google API Console with authorized origins and redirect URIs.\u003c/p\u003e\n"],["\u003cp\u003eDownload and install the Google Photos Library API client library for PHP using composer or by cloning the repository.\u003c/p\u003e\n"],["\u003cp\u003eAuthenticate users using the Google Auth Library for PHP, then utilize the PhotosLibraryClient to interact with the API and access its features.\u003c/p\u003e\n"]]],["To use the Google Photos Library API with PHP, first, enable the API in the Google API Console and create an OAuth 2.0 client ID, specifying your app's authorized JavaScript origins and redirect URIs. Download the client ID's JSON file, containing the client ID and secret. Next, install the PHP client library via Composer, and set up OAuth2 credentials using the downloaded JSON file. Use these credentials to set up the `PhotosLibraryClient` and try API calls.\n"],null,["# Get started with PHP client library\n\nTo start using the Google Photos Library API with the PHP client library, you will need to\n[set up the client library](#get-library) in your development environment.\nBefore you do that, [configure your project](#configure-app) by enabling the API\nvia the Google API Console and setting up an OAuth 2.0 client ID.\n\nYour application interacts with Google Photos on behalf of a\nGoogle Photos user. For instance, when you create albums in a user's\nGoogle Photos library or upload media items to a user's\nGoogle Photos account, the user authorizes these API requests via the\n[OAuth 2.0](/identity/protocols/OAuth2) protocol.\n\nThe OAuth 2.0 client ID allows your application users to sign in, authenticate,\nand thereby use the Library API. The Library API does not support\nservice accounts; to use this API, users must be signed in to a valid Google\nAccount.\n\nConfigure your app\n------------------\n\n### Enable the API\n\nBefore you can use the Library API, you must enable it for your project.\n\n1. Go to the [Google API Console](https://console.developers.google.com/apis/library).\n2. From the menu bar, select a project or create a new project.\n3. To open the Google API Library, from the Navigation menu, select **APIs \\& Services \\\u003e Library**.\n4. Search for \"Google Photos Library API\". Select the correct result and click **Enable**.\n\n### Request an OAuth 2.0 client ID\n\nFollow the steps below to request an OAuth client ID and configure it for your\napplication. This example uses an application where the entire OAuth flow is\nhandled server-side, such as the one in our samples. The setup process may vary\nfor other [implementation scenarios](/identity/protocols/OAuth2).\n\n1. Go to the [Google API Console](https://console.developers.google.com/apis/library) and select your project.\n2. From the menu, select **APIs \\& Services \\\u003e Credentials**.\n3. On the **Credentials** page, click **Create Credentials \\\u003e OAuth client ID**.\n4. Select your **Application type** . In this example, the application type is **Web application**.\n5. Register the origins from which your app is allowed to access the Google APIs\n as follows:\n\n 1. To identify the client ID, enter a name.\n 2. In the **Authorized JavaScript origins** field, enter the origin for your\n app. This field doesn't allow wildcards.\n\n You can enter multiple origins to allow your app to run on different\n protocols, domains, or subdomains. The URLs you enter are allowed to\n start an OAuth request.\n\n The following example shows a local development URL (our samples use\n `localhost:8080`) and a production URL. \n\n http://localhost:8080\n https://myproductionurl.example.com\n\n 3. The **Authorized redirect URI** field is the endpoint that receives\n responses from the OAuth 2.0 server. Typically, this includes your\n development environment and points to a path in your application.\n\n http://localhost:8080/auth/google/callback\n https://myproductionurl.example.com/auth/google/callback\n\n 4. Click **Create**.\n\n\u003c!-- --\u003e\n\n6. From the resulting OAuth client dialog, download the JSON file\n containing your client configuration. You client details consist of the\n following:\n\n - Client ID\n - Client secret\n\n This JSON file will be used later to [set up](#get-library)\n the Google Auth library for PHP which works with this client library.\n\nBefore you can launch a public application that accesses the Library API,\nyour app must be reviewed by Google. An \"Unverified app\" message appears on the\nscreen when you test your application, until it is\n[verified](https://support.google.com/cloud/answer/7454865).\n\nSet up the client library\n-------------------------\n\nThe PHP client library handles all the backend API calls for you, and exposes\nfriendly objects to work with, including code samples for some common API tasks.\nFirstly, download and install the Google Photos Library API client library for PHP along with\nthe dependencies from [GitHub](https://github.com/google/php-photoslibrary).\nThen, set up your OAuth2 credentials for PHP.\n\n### Download options\n\nUse [composer](https://github.com/google/php-photoslibrary#using-composer-require)\nto include the library as a dependency in your development environment. Run the\nfollowing command to add the library to your project configuration and download\nit to the `vendor/` directory. \n\n composer require google/photos-library\n\nAlternatively, you can also\n[clone the\nrepository](https://github.com/google/php-photoslibrary#using-git-clone) or\n[download a compressed\ntarball](https://github.com/google/php-photoslibrary#downloading-a-compressed-tarball).\n\n### Set up your OAuth2 credentials for PHP\n\nThis client library works with the\n[Google Auth Library for\nPHP](https://github.com/google/google-auth-library-php). For more information,\nrefer to [Using OAuth 2.0 with the Google API Client Library for\nPHP](https://developers.google.com/api-client-library/php/auth/web-app).\n\nUse the authentication credentials returned by the auth library when setting up\nthe `PhotosLibraryClient`.\n\nTry out some samples\n--------------------\n\nTry the code below to make your first API call using the PHP client library. \n\n use Google\\Auth\\Credentials\\UserRefreshCredentials;\n use Google\\Photos\\Library\\V1\\PhotosLibraryClient;\n use Google\\Photos\\Library\\V1\\PhotosLibraryResourceFactory;\n\n try {\n // Use the OAuth flow provided by the Google API Client Auth library\n // to authenticate users. See the file /src/common/common.php in the samples for a complete\n // authentication example.\n $authCredentials = new UserRefreshCredentials( /* Add your scope, client secret and refresh token here */ );\n\n // Set up the Photos Library Client that interacts with the API\n $photosLibraryClient = new PhotosLibraryClient(['credentials' =\u003e $authCredentials]);\n\n // Create a new Album object with at title\n $newAlbum = PhotosLibraryResourceFactory::album(\"My Album\");\n\n // Make the call to the Library API to create the new album\n $createdAlbum = $photosLibraryClient-\u003ecreateAlbum($newAlbum);\n\n // The creation call returns the ID of the new album\n $albumId = $createdAlbum-\u003egetId();\n } catch (\\Google\\ApiCore\\ApiException $exception) {\n // Error during album creation\n } catch (\\Google\\ApiCore\\ValidationException $e) {\n // Error during client creation\n echo $exception;\n }\n\nThere are more\n[samples](https://github.com/google/php-photoslibrary/tree/samples) on GitHub\nfor you to try."]]