libriciel/php-office-clients

PHP 客户端,用于文档合并服务。

1.0.0-alpha.5 2024-06-13 14:58 UTC

README

Version PHP License: AGPL v3 pipeline coverage

php-office-clients

提供统一接口的 PHP 客户端,用于文档合并服务,无需依赖 框架

默认配置通过环境变量进行。

已测试与

旧版库

使用方法

了解更多

示例

Pdf2Odt

use Libriciel\OfficeFusion\Pdf2Odt\Client\ClientFactory;

try {
    $documentContent = ClientFactory::create()
        ->pdf2odt('/data/workspace/document.pdf');
    // ...
} catch(\Throwable $exc) {
    // ...
}

融合

use Libriciel\OfficeFusion\Fusion\Client\ClientFactory;
use Libriciel\OfficeFusion\Fusion\Helper\Builder;

try {
    // Création des données
    $main = (new Builder())
        ->addField('entity_name', 'Libriciel SCOP')
        // ...
    ;

    $documentContent = ClientFactory::create()
        ->fusion('/data/workspace/template.odt', $main->getResult());
    // ...
} catch(\Throwable $exc) {
    // ...
}

转换

use Libriciel\OfficeFusion\Conversion\Client\ClientFactory;

try {
    $documentContent = ClientFactory::create()
        ->conversion(file_get_contents('/data/workspace/document.odt'), 'odt', 'pdf');
    // ...
} catch(\Throwable $exc) {
    // ...
}

开发

docker compose -f docker-compose-dev.yml up -d --build
docker compose -f docker-compose-dev.yml logs -f
docker compose -f docker-compose-dev.yml exec php-office-clients /bin/bash
docker compose -f docker-compose-dev.yml down --remove-orphans --volumes
composer pre-commit

不完整的集成测试

  • flow 应该发送 410 Gone(从 1.0.0-rc.4 开始)(当前测试被 跳过