dan-leech / moodle-php-sdk
PHP SDK for Moodle RESTful APIs
v1.0.0
2020-03-13 20:50 UTC
Requires
- zeptech/annotations: 1.1.0
Requires (Dev)
- nesbot/carbon: ~1.21
- phpunit/phpunit: ^5.0
- vlucas/phpdotenv: *
This package is auto-updated.
Last update: 2025-04-14 09:03:01 UTC
README
PHP SDK for Moodle RESTful APIs
Getting Started
-
Install MoodleSDK
php composer.phar require agurz/moodle-php-sdk
-
Create a
RestApiContext
instance$context = new RestApiContext(); $context->setUrl('example.com/moodle') ->setCredential(new AuthTokenCredential('token'))
-
Create a model object instance, set it's properties and call
get
,create
,update
, ordelete
operations$user = new User(); $user->setUsername('username') ->setPassword('Password..01') ->setFirstName('first') ->setLastName('last') ->setFullName('first last') ->setEmail('test@example.com') ->create($context)
-
That's all!
Usage example
Creating a user and enrolling him into 'test-course' course
<?php require_once 'vendor/autoload.php'; use MoodleSDK\Api\Model\Course; use MoodleSDK\Api\Model\User; use MoodleSDK\Auth\AuthTokenCredential; use MoodleSDK\Rest\RestApiContext; $context = RestApiContext::instance() ->setUrl('example.com/moodle') ->setCredential(new AuthTokenCredential('token')) $user = User::instance() ->setUsername('agurz') ->setPassword('Password..01') ->setFirstName('Agustn') ->setLastName('Rodríguez') ->setFullName('Agustn Rodríguez') ->setEmail('test@example.com') ->create($context); $course = Course::instance() ->setShortName('test-course') ->get($context) ->enrolUser($context, $user);