freedomcore / vk-api
FreedomCore VK API 库
1.0.5
2016-04-01 17:58 UTC
Requires
- php: >=5.6
- ext-curl: *
- ext-pdo: *
This package is auto-updated.
Last update: 2024-09-24 23:18:21 UTC
README
这是一个基于官方VK API 文档的 PHP VK API 客户端
目录
简介
这是一个纯 PHP 实现的 VK API 客户端库。可以通过向 API 文件夹添加额外的资源类来轻松扩展。
优点
- 可以授权具有特定作用域的用户
- 在执行 API 调用之前可以检查所需的作用域
- 与:用户、群组、数据存储、账户和文档 API 一起工作
- 易于修改
- 易于使用
此代码可在Github上找到。欢迎提交拉取请求。
使用 Composer 安装此包
通过 Composer 安装此包。编辑您的项目 composer.json 文件以要求 freedomcore/vk-api。
创建 composer.json 文件
{ "name": "nameofyourproject/nameofyourproject", "type": "project", "require": { "php": ">=5.6.0", "freedomcore/vk-api": "*" } }
然后运行 composer update
或者
在您的命令行中运行此命令
composer require freedomcore/vk-api
配置
- 创建新对象
a. 在授权完成之前与库一起工作
b. 在授权完成后与库一起工作$vkObject = new FreedomCore\VK\VKBase('{APPLICATION_ID}', '{API_SECRET}');$vkObject = new FreedomCore\VK\VKBase('{APPLICATION_ID}', '{API_SECRET}', '{ACCESS_TOKEN}'); - 如何授权用户
a. 生成授权链接
b. 使用回调中的密钥获取访问令牌$vkObject->getAuthorizationURL('{SCOPE}', '{CALLBACK_URL}');
c. 检查用户是否已授权$vkObject->getAccessToken('{CODE}');$vkObject->isAuthorized(); // returns true | false - 现在您可以与 API 一起工作了
资源
VKBase 资源
这是库的主要资源
此资源中提供了 4 个 API 方法
setAPIVersion({API_VERSION})- 设置用户提供的 API 版本getAuthorizationURL({SCOPE}, {CALLBACK_URL}, {RESPONSE_TYPE}, {TEST_MODE})- 返回带有传递参数的授权链接getAccessToken({CODE}, {CALLBACK_URL})- 从授权链接返回访问令牌isAuthorized()- 返回用户授权状态
VKAccount 资源
此资源允许您获取与用户相关的数据
如何使用
初始化新的 VKAccount 对象
$VKAccount = new FreedomCore\VK\API\VKAccount($vkObject);
现在您可以调用方法,例如
$getCounters = $VKAccount->getCounters(); $getApplicationPermissions = $VKAccount->getAppPermissions({USER_ID});
此资源中提供了 6 个 API 方法
getCounters({USER_FIELDS 可选})- 获取所有大于零的计数器(消息、视频、朋友等)setNameInMenu({USER_ID}, {APPLICATION_NAME})- 如果用户允许,则创建指向应用程序的侧边栏链接setOnline()- 将状态设置为在线 15 分钟setOffline()- 将状态设置为离线getActiveOffers({OFFSET 可选}, {COUNT 可选})- 返回活动广告(优惠)列表getAppPermissions()- 获取当前用户在此应用程序中的设置
VKDataStorage 资源
缺少描述
此资源中提供了 3 个 API 方法
get({KEY}, {KEYS}, {USER_ID}, {IS_GLOBAL})- 返回键参数设置的变量的值set({KEY}, {VALUE}, {USER_ID}, {IS_GLOBAL})- 保存键参数设置的变量的值getKeys({USER_ID}, {IS_GLOBAL}, {OFFSET 可选}, {COUNT 可选})- 返回所有变量的名称
VKDocuments 资源
注意: 此资源不完整 | 还有 7 个方法需要添加
此资源允许您处理属于用户/群的文档
如何使用
初始化新的 VKDocuments 对象
$VKDocuments = new FreedomCore\VK\API\VKDocuments($vkObject);
现在您可以调用方法,例如
$isMember = $VKDocuments->get(123456, 100); // returns 100 results $searchForGroups = $VKDocuments->getById('123456_654321'); // gets document by ID
此资源中提供了 3 个 API 方法
get({OWNER_ID}, {COUNT 可选}, {OFFSET 可选})- 返回关于用户或社区文档的详细信息getById({DOCUMENT_ID_OR_ARRAY_OF_IDS})- 根据ID返回文档信息getUploadServer({COMMUNITY_ID})- 返回文档上传的服务器地址
VKGroups 资源
如何使用
此资源允许您管理群组和与它们一起工作
初始化新的 VKGroups 对象
$VKGroups = new FreedomCore\VK\API\VKGroups($vkObject);
现在您可以调用方法,例如
$isMember = $VKGroups->isMember(123456, 654321, 1); $searchForGroups = $VKGroups->search('FreedomCore');
此资源中有 19 个 API 方法
isMember({GROUP_ID}, {USER_ID}, {IS_EXTENDED 可选})- 返回指定用户是否为社区成员的信息getById({GROUP_ID}, {GROUP_FIELDS})- 根据ID(ID)返回社区信息get({USER_ID}, {IS_EXTENDED 可选}, {FILTER 可选}, {GROUP_FIELDS 可选})- 返回用户所属社区列表getMembers({GROUP_ID}, {USERS_FIELDS 可选})- 返回社区成员列表join({GROUP_ID}, {IS_EVENT 可选})- 通过此方法可以加入群组或公共页面,并确认您对活动的参与。leave({GROUP_ID})- 通过此方法可以离开群组、公共页面或活动。search({QUERY}, {GROUP_TYPE 可选})- 根据子字符串搜索社区。getInvites({IS_EXTENDED 可选})- 返回加入社区和活动的邀请列表。getInvitedUsers({GROUP_ID}, {USERS_FIELDS 可选})- 返回社区邀请用户列表 (需要版主状态)banUser({GROUP_ID}, {USER_ID}, {REASON 可选}, {COMMENT 可选}, {BAN_ENDS 可选}, {SHOW_COMMENT 可选})- 将用户添加到社区黑名单 (需要版主状态)unbanUser({GROUP_ID}, {USER_ID})- 从社区黑名单中删除用户 (需要版主状态)getBanned({GROUP_ID})- 返回社区黑名单中的用户列表 (需要版主状态)create({TITLE}, {DESCRIPTION}, {TYPE 可选}, {SUB_TYPE 可选})- 创建新的社区edit({GROUP_ID}, {TITLE}, {DESCRIPTION}, {SCREEN_NAME}, {ACCESS}, {WEBSITE}, {SUBJECT})- 编辑社区 (此方法不完整)getSettings({GROUP_ID})- 获取群组设置getRequests({GROUP_ID}, {FIELDS 可选}, {COUNT 可选})- 获取群组访问请求invite({GROUP_ID}, {USER_ID})- 邀请用户加入群组 (需要版主状态)removeUser({GROUP_ID}, {USER_ID})- 从群组中删除用户 (需要版主状态)approveRequest({GROUP_ID}, {USER_ID})- 批准用户加入群组的请求 (需要版主状态)
VKUsers 资源
此资源允许您处理用户及其数据
如何使用
初始化新的 VKUsers 对象
$VKUsers= new FreedomCore\VK\API\VKUsers($vkObject);
现在您可以调用方法,例如
$isMember = $VKUsers->isMember(123456, 654321, 1); $searchForGroups = $VKUsers->search('FreedomCore');
此资源中提供了 6 个 API 方法
get({USER_IDS 数组}, {FIELDS 可选}, {CASE 可选})- 返回关于用户的详细信息search({QUERY}, {IS_ONLINE 可选}, {FIELDS 可选}, {SORT 可选}, {COUNT 可选})- 返回符合搜索条件的用户列表isAppUser({USER_ID})- 返回信息,确定用户是否安装了应用程序getSubscriptions({USER_ID}, {COMBINE 可选}, {FIELDS 可选}, {COUNT 可选})- 返回用户关注的用户和社区ID列表getFollowers({USER_ID}, {OFFSET 可选}, {COUNT 可选}, {FIELDS 可选}, {CASE 可选})- 返回关注特定用户且按添加日期排序的用户ID列表,最近添加的排在最前面getNearby({LATITUDE}, {LONGITUDE}, {TIMEOUT 可选}, {RADIUS 可选}, {FIELDS 可选}, {CASE 可选})- 根据当前纬度和经度获取附近用户