smtech / canvaspest
此包已被废弃且不再维护。没有建议替代包。
对Pest的扩展,用于对Instructure Canvas API进行RESTful查询
v1.1.9
2017-06-14 02:09 UTC
Requires
Requires (Dev)
- phpunit/phpunit: ^5.7
README
使用PHP面向对象方式访问Canvas API。
安装
在你的 composer.json
中包含
"require": { "smtech/canvaspest": "1.*" }
使用
CanvasPest
创建一个新的CanvasPest以向Canvas API发送RESTful查询
// construct with the API URL and an API access token
$api = new CanvasPest('https://canvas.instructure.com/api/v1', 'df2bcbad95f606d6e80093f8e40c4e5ca171d8c5e4f2138e1d58273e33b262ef')
对API进行RESTful查询
// GET, PUT, POST, DELETE are all supported $obj = $api->get('users/self/profile');
查询的响应为 CanvasObject
或 CanvasArray
(CanvasObjects的数组,当然),具体取决于您请求的是特定对象还是对象列表(即使列表实际上只有一个对象)。
CanvasObjects
可以通过对象风格或数组风格访问CanvasObject字段
$obj = $api->get('courses/123'); echo $obj['sis_course_id']; // array-style echo $obj->title; // object-style
CanvasArrays
可以使用 foreach
控制结构方便地遍历CanvasArrays。
$arr = $api->get('/accounts/1/users'); foreach($arr as $obj) { echo $obj->name; }
也可以访问CanvasArray的任意元素
$arr = $api->get('accounts/1/courses'); echo $arr[1337]->title;
请注意,CanvasObjects和CanvasArrays都是不可变对象 -- 即它们被视为只读。实际上,如果您尝试修改CanvasObject或CanvasArray,将会抛出异常。
完整API文档可在存储库中找到。