php-extended / php-api-fr-gouv-finances-mioga-object
实现 php-extended/php-api-fr-gouv-finances-mioga-interface 库的库
Requires
Requires (Dev)
This package is auto-updated.
Last update: 2024-07-26 13:50:20 UTC
README
连接到 mioga.finances.gouv.fr 实例的 php API 包装器
安装
此库的安装通过 composer 完成,所有类的自动加载通过它们的自动加载器完成。
- 从他们的网站下载
composer.phar
。 - 然后运行以下命令将此库作为依赖项安装
php composer.phar php-extended/php-api-fr-gouv-finances-mioga-object ^7
支持的功能
功能 | 状态 | 主要方法 |
---|---|---|
Global.Login | 实现 | MiogaEndpoint->login() |
Magellan.Folder.Create | 实现 | MiogaFolder->createChildFolder() |
Magellan.Folder.Browse | 实现 | MiogaFolder->hasFile() |
Magellan.Folder.Rename | 实现 | MiogaFolder->rename() |
Magellan.Folder.Delete | 实现 | MiogaFolder->delete() |
Magellan.Folder.Copy | 实现 | MiogaFolder->copyTo() |
Magellan.Folder.Move | 实现 | MiogaFolder->moveTo() |
Magellan.Folder.ZDDownload | 实现 | MiogaFolder->zipDownload() |
Magellan.Folder.ZSDownload | 实现 | MiogaFolder->zipDownloadToStream() |
Magellan.File.Upload | 实现 | MiogaFolder->uploadFile() |
Magellan.File.ZUpload | 实现 | MiogaFolder->uploadZipFileAndDecompress() |
Magellan.File.Rename | 实现 | MiogaFile->rename() |
Magellan.File.Delete | 实现 | MiogaFile->delete() |
Magellan.File.Copy | 实现 | MiogaFile->copyTo() |
Magellan.File.Move | 实现 | MiogaFile->moveTo() |
Magellan.File.Lock | 实现 | MiogaFile->lock() |
Magellan.File.Unlock | 实现 | MiogaFile->unlock() |
Magellan.File.DDownload | 实现 | MiogaFile->download() |
Magellan.File.SDownload | 实现 | MiogaFile->downloadToStream() |
Magellan.MassDownload | 实现 | MiogaEndpoint->downloadSynchronize() |
Magellan.MassUpload | 实现 | MiogaEndpoint->uploadSynchronize() |
Bottin.User.Add | 实现 | MiogaBottinEndpoint->addUser() |
Bottin.User.Delete | 实现 | MiogaBottinEndpoint->removeUser() |
Bottin.User.List | 实现 | MiogaBottinEndpoint->getUserData() |
Bottin.User.Enable | 实现 | MiogaBottinEndpoint->enableUser() |
Bottin.User.Disable | 实现 | MiogaBottinEndpoint->disableUser() |
Bottin.Status.List | 实现 | MiogaBottinEndpoint->getUserStatuses() |
基本用法
全局上,如果发生错误,所有方法都会抛出 \PhpExtended\MiogaFinancesGouvFrApi\MiogaException
异常。这可能是连接问题、参数问题、服务器问题或其他任何问题。
Global.Login
此功能执行特定账户的登录和持久会话管理。
use PhpExtended\Endpoint\HttpEndpoint;
use PhpExtended\Endpoint\HttpJsonEndpoint;
use PhpExtended\MiogaFinancesGouvFrApi\MiogaEndpoint;
/* @var $client \Psr\Http\Client\ClientInterface */
$endpoint = new MiogaEndpoint(new HttpJsonEndpoint(new HttpEndpoint($client)));
创建代理对象是登录所需做的唯一事情。登录不是在对象的实例化时完成的,而是在实例中对有用信息进行第一次请求之前。
Magellan.Folder.Create
此功能在特定目录下创建目录。
$folder->createFolder('<subfolder name>');
此方法创建一个文件夹或尝试抛出异常。
Magellan.Folder.Browse
此功能在特定目录下列出文件和目录。
$folder = $mioga->getFolder($path);
此方法返回一个 MiogaFolder 对象或尝试抛出异常。
Magellan.Folder.Rename
此功能执行特定目录的重命名。
$folder->rename('<new name>');
此方法重命名文件夹或尝试抛出异常。警告,一旦此文件夹被重命名,节点无效,其所有层次结构应被视为无效节点。您必须丢弃当前节点的引用,并从父文件夹获取一个新的节点。
Magellan.Folder.Delete
此功能执行删除特定目录及其所有子层次结构。
$folder->delete();
此操作将删除文件夹或尝试抛出异常。警告:一旦删除此文件夹,节点将无效。应从父文件夹重新加载层次结构。
Magellan.Folder.Copy
此功能将特定目录及其所有子层次结构复制到另一个目录。
$folder->copyFolderToFolder($otherFolder);
尝试复制整个层次结构或抛出异常。
Magellan.Folder.Move
此功能将指定目录及其所有子层次结构移动到另一个目录。
$folder->moveFolderToFolder($otherFolder);
尝试移动(剪切粘贴)整个层次结构或抛出异常。警告:一旦移动此文件夹,节点将无效。应从父文件夹重新加载层次结构。您必须丢弃当前节点的引用并从父文件夹获取一个新的引用。
Magellan.Folder.ZDDownload
此功能直接下载目标文件夹。文件夹及其所有文件层次结构将被压缩成zip文件。
$data = $folder->zipDownload();
此对象上的zipDownload
方法返回表示下载文件夹的zip文件的原始数据。警告:此方法将整个文件下载到内存中,可能会超出大文件的内存限制。因此,建议使用流式下载方法。
Magellan.Folder.ZSDownload
此功能以流式方式下载目标文件夹。文件夹及其所有文件层次结构将被压缩成zip文件。
$stream = fopen($localpath);
$folder->zipDownloadToStream($stream);
此对象上的zipDownloadToStream
方法不返回任何内容,但通过将zip文件下载到指定的输出流来执行流式下载。此方法会阻塞。
Magellan.File.Upload
此功能将来自真实文件系统给定路径的文件上传。
$folder->uploadFile($filePath);
此方法将在$filePath
位置上传文件,或尝试抛出异常。如果给定的路径上不存在文件,它也会抛出异常。
Magellan.File.ZUpload
此功能从真实文件系统的给定路径上传zip文件,并将其解压到文件系统中。
$folder->uploadZipFileAndUncompress($filePath);
此方法将在$filePath
位置上传文件,或尝试抛出异常。如果给定的路径上不存在文件,或文件无法解压,它也会抛出异常。
Magellan.File.Rename
此功能执行特定文件的重命名。
$file->rename('<new name>');
尝试重命名文件或抛出异常。警告:一旦文件被重命名,节点将无效。应从父文件夹重新加载层次结构。您必须丢弃当前节点的引用并从父文件夹获取一个新的引用。
Magellan.File.Delete
此功能执行特定文件的删除。
$file->delete();
尝试删除文件或抛出异常。警告:一旦文件被删除,节点将无效。应从父文件夹重新加载层次结构。
Magellan.File.Copy
此功能将特定文件复制到另一个目录。
$file->copyFileToFolder($otherFolder);
尝试复制文件或抛出异常。
Magellan.File.Move
此功能将指定文件移动到另一个目录。
$file->moveFileToFolder($otherFolder);
尝试移动(剪切粘贴)文件或抛出异常。警告:一旦文件被移动,节点将无效。应从父文件夹重新加载层次结构。您必须丢弃当前节点的引用并从父文件夹获取一个新的引用。
Magellan.File.Lock
此功能执行特定文件的锁定。
$file->lock();
尝试锁定文件或抛出异常。
Magellan.File.Unlock
此功能执行特定文件的解锁。
$file->unlock();
尝试解锁文件或抛出异常。
Magellan.File.DDownload
此功能直接下载目标文件。
$data = $file->download();
MiogaFile对象上的download
方法返回文件的原始数据。警告:此方法将整个文件下载到内存中,可能会超出大文件的内存限制。因此,建议使用流式下载方法。
Magellan.File.SDownload
此功能以流式方式下载目标文件。
$stream = fopen($localpath);
$file->downloadToStream($stream);
此对象上的 downloadToStream
方法不返回任何内容,而是通过将文件下载到指定的输出流来执行流式下载。此方法为阻塞式。
Magellan.MassDownload
此功能在本地文件夹和 mioga 实例中的文件夹之间执行文件夹层次结构同步,通过递归下载远程服务器上的所有文件并将它们保存到本地文件夹层次结构中。
$endpoint->downloadSynchronize($miogaFolder, $localFolder);
此方法尝试下载所有文件并将它们写入文件系统,或者在尝试过程中抛出异常。
Magellan.MassUpload
此功能在本地文件夹和 mioga 实例中的文件夹之间执行文件夹层次结构同步,通过递归将本地文件夹层次结构中的所有文件上传到远程服务器。
$endpoint->uploadSynchronize($localFolder, $miogaFolder);
此方法尝试上传所有文件并将它们写入文件系统,或者在尝试过程中抛出异常。
Bottin.User.Add
此功能执行特定用户的添加。
$bottinApi->addUser($user_email);
如果无法通过电子邮件在 ldap 中找到用户,则此方法抛出 MiogaException
,如果进程成功则返回 true,如果失败则返回 false。
Bottin.User.Delete
此功能执行特定用户的删除。
$bottinApi->deleteUser($miogaUser);
此方法删除指定的用户或在尝试过程中抛出异常。
Bottin.User.List
此功能执行所有可用用户的列表。
$userList = $bottinApi->getUserData();
// to be able to get specific users, do:
foreach($userList as $user)
{
/* @var $user \PhpExtended\MiogaFinancesGouvFrApi\Bottin\MiogaUser */
// do something
}
此方法返回所有用户或在尝试过程中抛出异常。
Bottin.User.Enable
此功能重新激活已禁用的用户。
$bottinApi->enableUser($miogaUser);
如果成功,则此方法返回 true,如果失败则返回 false,并在服务器失败的情况下抛出异常。
Bottin.User.Disable
此功能禁用活动用户。
$bottinApi->disableUser($miogaUser);
如果成功,则此方法返回 true,如果失败则返回 false,并在服务器失败的情况下抛出异常。
Bottin.Status.List
此功能执行所有可用状态的列表。
$statusList = $bottinApi->getUserStatuses();
// to be able to compare with existing statuses, do:
foreach($statusList as $status)
{
/* @var $status \PhpExtended\MiogaFinancesGouvFrApi\Bottin\MiogaStatus */
if($status->getIdent() === '<value to compare>')
{
// do something
}
}
此方法返回所有用户状态或在尝试过程中抛出异常。
许可证
MIT(见许可证文件)。