【发布时间】:2018-08-24 21:02:31
【问题描述】:
我正在使用 docusign API 和 PHP 构建一个应用程序。除了我不知道如何下载文档外,我的大部分工作都完成了。我一直在这个网站和 Docusign 网站上搜索。 Docusign 有一个example here,它显示了如何在 PHP 中获取文档列表,但下载没有 PHP 示例。在 Docusign REST API 文档中,他们解释了 method here。但这表示响应是“PDF 文件”。
在下面的示例代码中,我尝试将内容放入文件中,但它会创建并清空文件。如果我 print_r($data),我得到这个:
SplFileObject Object
(
[pathName:SplFileInfo:private] => /tmp/419ULk
[fileName:SplFileInfo:private] => 419ULk
[openMode:SplFileObject:private] => w
[delimiter:SplFileObject:private] => ,
[enclosure:SplFileObject:private] => "
)
它确实在 /tmp 中创建了文件,但我想将文件保存在一个字符串中,以便发送或保存到 DB。
这是我的控制器功能:
public function get_document($envelopeId, $cert = FALSE)
{
$save_dir = BASEPATH."../documents/";
if ($envelopeId) {
$this->load->model('docusign_model');
$data = $this->docusign_model->get_document($envelopeId, $cert);
}
file_put_contents($save_dir.$envelopeId.".pdf", $data);
//print_r($data);
die("116");
}
这在docusign_model中:
public function get_document($envelopeId, $cert)
{
$docuSignAuth = $this->auth();
if ($docuSignAuth) {
$envelopeApi = new EnvelopesApi($docuSignAuth->apiClient);
$options = new GetDocumentOptions();
if($cert) {
$options->setCertificate(TRUE);
} else {
$options->setCertificate(FALSE);
}
return $envelopeApi->getDocument($docuSignAuth->accountId, 1, $envelopeId, $options);
}
return false;
}
如何获取此文档并将其保存在字符串中?
非常感谢任何和所有帮助!
【问题讨论】:
-
缺少流的
file_get_contents,请参阅下面的答案
标签: docusignapi