tflanagan / quickbase
轻量级、非常灵活的QuickBase API
v2.1.1
2021-03-23 15:38 UTC
Requires
- php: >=5.4.0
- ext-curl: *
- ext-xml: *
This package is auto-updated.
Last update: 2024-09-23 23:21:42 UTC
README
轻量级、非常灵活的QuickBase API
安装
$ composer require tflanagan/quickbase
示例
try { $qb = new \QuickBase\QuickBase(array( 'realm' => 'www', 'appToken' => '****', // 'userToken' => '****' )); // If using user tokens, you do not need to call API_Authenticate $qb->api('API_Authenticate', array( 'username' => '****', 'password' => '****' )); $response = $qb->api('API_DoQuery', array( 'dbid' => '*****', 'clist' => '3.12', 'options' => 'num-5' )); foreach($response['table']['records'] as $record){ $qb->api('API_EditRecord', array( 'dbid' => '*****', 'rid' => $record[3], 'fields' => array( array( 'fid' => 12, 'value' => $record[12]) ) )); } $results = $qb->api(array( array( 'action' => 'API_DoQuery', 'options' => array( 'dbid' => '*****', 'clist' => '3.12', 'options' => 'num-5' ) ), array( 'action' => 'API_DoQuery', 'options' => array( 'dbid' => '*****', 'clist' => '3.12', 'options' => 'num-5' ) ) )); var_dump($results[0]); // First DoQuery var_dump($results[1]); // Second DoQuery }catch(\QuickBase\QuickBaseError $err){ echo '('.$err->getCode().') '.$err->getMessage().'. '.$err->getDetails(); }
类
class \QuickBase\QuickBase { public cURL multi $mch; public array $chs; private $defaults; final public api($action[, $options = array()]); final public api($actions = array()); final public static genCH(); } class \QuickBase\QuickBaseError extends \Exception { protected int $code; protected string $message; protected string $details; protected int $line; protected string $file; final public getCode(void); final public getMessage(void); final public getDetails(void); final public getLine(void); final public getFile(void); } class \QuickBase\QuickBaseQuery { public QuickBase $parent; public string $action; public array $settings; public array $options; public array $response; private int $nErrors; protected string $payload; final public actionRequest(); final public actionResponse(); final public addFlags(); final public constructPayload(); final public checkForAndHandleError(); final public finalize(); final public prepareCH(); final public processCH(); final public processOptions(); final public static arr2Obj(&$arr[, $return = false]); final public static arr2Xml($arr, &$xml); final public static cleanXml2Arr(&$arr); final public static parseCURLHeaders(&$headers); final public static xml2Arr($xml, &$arr); } class \QuickBase\QuickBaseRequest { final public static API_[Authenticate, DoQuery, etc](&$query); } class \QuickBase\QuickBaseResponse { final public static API_[Authenticate, DoQuery, etc](&$query, &$results); } class \QuickBase\QuickBaseOption { final public static [clist, fields, etc]($val); }
错误处理
php-quickbase在检测到错误时抛出异常。您不需要手动检查QuickBase错误,只需将您的代码包裹在try/catch
块中即可!
try { // QuickBase API Calls Here }catch(\QuickBase\QuickBaseError $err){ echo '('.$err->getCode().') '.$err->getMessage().'. '.$err->getDetails(); /* * class \QuickBase\QuickBaseError extends \Exception { * * protected int $code; * protected string $message; * protected string $details; * * protected int $line; * protected string $file; * * final public getCode(void); * final public getMessage(void); * final public getDetails(void); * * final public getLine(void); * final public getFile(void); * * } */ }
许可证
版权所有 2015 Tristian Flanagan
在Apache License, Version 2.0(以下简称“许可证”)下许可;除非适用法律要求或经书面同意,否则不得使用此文件,除非符合许可证。您可以在以下地址获得许可证的副本:
https://apache.ac.cn/licenses/LICENSE-2.0
除非适用法律要求或经书面同意,否则在许可证下分发的软件按“原样”基础分发,不提供任何明示或暗示的保证或条件。有关许可证的具体语言规定、权限和限制,请参阅许可证。