pcloud/pcloud-php-sdk

PHP 的 pCloud SDK

3.0.0 2022-10-06 13:02 UTC

This package is not auto-updated.

Last update: 2024-09-19 22:32:08 UTC


README

一个用于访问 pCloud API 的 PHP 库

目录

系统需求

需要 PHP 7.1.0 或更高版本

Likelihood Of Impact: Critical

入门

注册您的应用程序

为了使用此 SDK,您必须在本应用的配置页面中注册您的应用程序。

安装 SDK

使用 Composer

安装 Composer

$ composer require pcloud/pcloud-php-sdk

或者将以下内容添加到 composer.json 文件中

"require": {
  "pcloud/pcloud-php-sdk": "3.*"
}

手动

复制 lib/ 文件夹,并在您的代码中包含 lib/autoload.php

初始化 SDK

SDK 使用 OAuth 2.0 访问令牌来授权对 pCloud API 的请求。您可以使用 SDK 的授权流程来获取令牌。为了允许 SDK 执行此操作,请在您的应用程序配置页面中找到 App KeyApp secretRedirect URIs 并将它们添加到 /example/code.php/example/auth.php

请注意,redirect_uri 是可选的。

运行 /example/code.php 以获取授权代码,并在 /example/auth.php 中使用此代码。这将返回 access_tokenlocationid

示例

// Include autoload.php and set the credential file path

$access_token = "ACCESS_TOKEN";
$locationid = 1;

$pCloudApp = new pCloud\Sdk\App();
$pCloudApp->setAccessToken($access_token);
$pCloudApp->setLocationId($locationid);

// Create Folder instance

$pcloudFolder = new pCloud\Sdk\Folder($pCloudApp);

// Create new folder in root

$folderId = $pcloudFolder->create("New folder");

// Create File instance

$pcloudFile = new pCloud\Sdk\File($pCloudApp);

// Upload new file in created folder

$fileMetadata = $pcloudFile->upload("./sample.png", $folderId);

// Get folder content

$folderContent = $pcloudFolder->getContent($folderId);

创建自定义请求

$access_token = "";
$locationid = 1;

$pCloudApp = new pCloud\Sdk\App();
$pCloudApp->setAccessToken($access_token);
$pCloudApp->setLocationId($locationid);

$method = "userinfo";
$params = array();

$request = new pCloud\Sdk\Request($pCloudApp);
$response = $request->get($method, $params); // the second argument is optional

迁移指南

在 SDK 版本 3 中,最重要的更改与调整命名空间有关。为了轻松迁移到版本 3,您需要更改以下内容

<?php 

namespace MyPhpApplication;

# this
use pCloud\App; // <-- Old versions

# change to: 
use pCloud\Sdk\App;  // <-- version 3.

-----

需要对所有 pCloud SDK 名称进行相同的更改,例如 pCloud\File、pCloud\Folder 等

如果您直接实例化类,可以进行以下更改

<?php 

namespace MyPhpApplication;

# this
$pCloudFolder = new pCloud\Folder($pCloudApp); // <-- Old versions

# change to: 
$pCloudFolder = new pCloud\Sdk\Folder($pCloudApp); // <-- version 3.

-----

如果您遗漏了某些内容,可以在 "example" 文件夹中找到更多示例。