liquidweb/php-stormondemand

StormOnDemand API的PHP绑定

v2.0.0 2014-02-26 13:26 UTC

This package is not auto-updated.

Last update: 2024-09-11 08:00:48 UTC


README

php-stormondemand为PHP程序员提供了一个库,通过StormAPI类与Liquid Web的Storm API交互。

支持的平台

无论您是否使用Liquid Web Storm服务器还是Storm on Demand,API以及随后的库都将正常工作。

支持的API版本

php-stormondemand库将与任何当前或未来的Storm API版本兼容。目前,有两个版本:

  • v1
  • bleed

要求

php-stormondemand库要求在PHP中启用cURL支持(有关更多信息,请参阅https://php.ac.cn/manual/en/book.curl.php)。

基本用法

以下是一个示例脚本(位于examples/目录中),展示了基本用法

<?php
	require_once('../StormAPI.class.php');
	
	$apiUser = "api_user";
	$apiPass = "api_pass";
	$apiMethod = "storm/server/list";
	$paramsArray = FALSE;
	$apiVersion = "v1";
	
	$storm = new \LiquidWeb\StormAPI($apiUser, $apiPass, $apiMethod, $paramsArray, $apiVersion);
	
	$storm->addParam("page_size", 999);
	$results = $storm->request();
	
	foreach($results['items'] as $item)
	{
		echo $item['domain']  . " || " . $item['uniq_id'] . "\n"; 
	}	
?>

或者,在实例化时也可以这样传递参数

<?php
	require_once('../StormAPI.class.php');
	
	$apiUser = "api_user";
	$apiPass = "api_pass";
	$apiMethod = "storm/server/list";
	$paramsArray = array('page_size' => 999);
	$apiVersion = "v1";
	
	$storm = new \LiquidWeb\StormAPI($apiUser, $apiPass, $apiMethod, $paramsArray, $apiVersion);
	
	$results = $storm->request();
	
	foreach($results['items'] as $item)
	{
		echo $item['domain']  . " || " . $item['uniq_id'] . "\n"; 
	}	
?>

使用了PHPDoc块,以便在您的IDE支持的情况下使用代码提示。

实例化方法摘要

以下是对当实例化StormAPI对象时,库提供的方法的简要总结,包括其功能及其参数。

__construct($apiUser, $apiPass, $apiMethod, $paramsArray = FALSE, $apiVersion = "v1") 当实例化一个StormAPI对象时调用的魔法构造方法。如果您想传递特定的API版本,但不想(或不能)在构造时传递参数,请将$paramsArray指定为布尔值(我更喜欢FALSE)。

bulkParams($paramsArray) 允许通过关联数组传递多个参数。

addParam($parameter, $value) 将指定的参数及其值添加到与API请求一起传递。

removeParam($parameter) 从与API请求一起传递中删除指定的参数。

listParams() 列出当前设置的所有参数。

listMethodParams() 解析API文档,并提供与当前使用的方法相关的参数。此外,它显示了参数的可选性。

clearParams() 清除可能已设置的所有参数。

newMethod($apiMethod, $clearparams = TRUE) 更改要调用的API方法。默认情况下,除非被覆盖,否则会清除参数。

listMethods() 返回所有可用于正在使用的API版本的API方法的列表。

debugInfo() 这是一个更方便的方法,它输出了可能对调试有用的某些信息。

request($displayFriendly = FALSE) 实际请求的方法。

当传递$displayFriendly为FALSE时,从API的解码JSON输出返回一个关联数组。

当$displayFriendly为TRUE时,返回一个包含两个键的数组,即'raw''display'。"display friendly"版本的输出在需要快速查看数据时很好,因为它以带有面包屑的格式显示,这样您可以轻松地知道数据在哪里。

storeRequest($key) 此方法通过提供的键存储API请求的结果。

returnRequests($key, $displayFriendly) 如果不提供 $key,此方法将返回所有存储的请求,或者返回特定键的请求。

$displayFriendly 参数的作用与 request() 方法中的对应参数相同。

listRequestKeys() 此方法列出存储请求的键。

removeRequest($key) 此方法移除给定键的存储请求。

静态方法摘要

以下为静态方法,它们不需要实例化对象即可运行。它们还具有为实例化对象提供的等效包装方法,以便获取当前设置值。

listMethodParamsStatic($apiMethod, $apiVersion = 'v1') 解析 API 文档,并提供与传入的方法和版本关联的参数。此外,它还显示了参数的可选性。

listMethodsStatic($apiVersion = 'v1') 返回所有可用 API 方法的列表,其中包含传入的 API 版本。