zamzar / zamzar-php
Zamzar PHP 库
v2.0.5
2024-04-22 17:29 UTC
Requires
- php: >=7.2.34
- ext-json: *
- guzzlehttp/guzzle: ^7.3
Requires (Dev)
- phpunit/phpunit: ^8.5
README
易于使用的PHP文件转换API,支持1100多种文件转换 - 转换文档、音频、图片、视频、电子书等。使用 zamzar-php
在您的PHP应用程序中通过Zamzar文件转换API在不同格式之间转换文件。常见的使用案例包括:
- 将Microsoft Word(DOCX, DOC)转换为PDF
- 从PDF文件中提取文本
- 将Powerpoint(PPT, PPTX)转换为JPG
- 将电子邮件存档(MSG文件)转换为PDF
这是Zamzar文件转换API的官方PHP SDK。
跳转到
要求
- 在开始之前,请在Zamzar开发者首页注册Zamzar API帐户或检索现有的API密钥。
- PHP 7.2.34及更高版本。
安装
您可以通过Composer安装绑定。运行以下命令:
composer require zamzar/zamzar-php
要使用绑定,请使用Composer的自动加载
require_once('vendor/autoload.php');
如果您不想使用Composer,您可以从最新发布版下载。然后,要使用绑定,请包含init.php
文件。
require_once('/path/to/zamzar-php/init.php');
依赖
绑定需要以下扩展才能正常工作
如果您使用Composer,这些依赖项应该会自动处理。如果您手动安装,请确保这些扩展可用。
初始化Zamzar客户端
要初始化客户端,声明一个新的ZamzarClient,它接受字符串或配置数组
// Connect to the Production API using an API Key $zamzar = new \Zamzar\ZamzarClient('apikey');
要指定客户端是否使用生产或测试API,请使用配置数组
// Use the Production API $zamzar = new \Zamzar\ZamzarClient([ 'api_key' => 'apiKey', 'environment' => 'production' ]); // Use the Sandbox API $zamzar = new \Zamzar\ZamzarClient([ 'api_key' => 'apiKey', 'environment' => 'sandbox' ]);
测试连接
为了确认您的凭据是否正确,请测试到API的连接,这将返回欢迎消息并确认您正在使用哪个API(生产或测试)。
echo $zamzar->testConnection();
典型用法
最常见的需求是提交一个作业来转换文件,等待作业完成,下载转换后的文件,并删除Zamzar服务器上的文件。
// Submit the file $job = $zamzar->jobs->create([ 'source_file' => 'path/to/local/file', 'target_format' => 'xxx' ]); // Wait for the job to complete (the default timeout is 60 seconds) $job->waitForCompletion(30); // Download the converted files $job->downloadTargetFiles('path/to/folder/'); // Delete the source and target files on Zamzar's servers $job->deleteAllFiles();
在每一步之间可能发生其他事情时,上述用例可能适用;如果不适用,并且您想将整个过程串联起来:
// Do the whole thing together $job = $zamzar->jobs->create([ 'source_file' => 'path/to/localfile', 'target_format' => 'pdf' ]) ->waitForCompletion(120) ->downloadTargetFiles('path/to/folder') ->deleteAllFiles();
配置日志记录器
库仅进行最小日志记录,如果使用debug
配置选项。使用提供的默认日志记录器或psr-3兼容的日志记录器。
$client = new Zamzar\ZamzarClient([ 'api_key' = '****', 'debug' => true, ]); // PSR-3 Compatible Logger \Zamzar\Zamzar::setLogger($psr3Logger); // Using Monolog $logger = new Logger('Zamzar'); $logger->pushHandler(new StreamHandler(__DIR__.'/app.log', Logger::DEBUG)); \Zamzar\Zamzar::setLogger($logger);
资源
代码示例 - 从示例中复制/粘贴,这些示例演示了所有关键功能区域。
异常处理 - 了解有关API错误代码的更多信息。
开发者文档 - 了解有关API操作、参数和响应的更多信息。如果您需要有关所有功能区域的额外上下文,请使用此文档。