Я создаю приложение, используя API docusign и PHP. У меня большая часть этого работает, за исключением того, что я не могу понять, как загрузить документ. Я искал на этом сайте и на сайте Docusign. У Docusign есть пример здесь, который показывает, как получить список документов в PHP, но в загрузке нет примера PHP. В документах Docusign REST API они объясняют метод здесь. Но это говорит, что ответ «Файл PDF».
В приведенном ниже примере кода я попытался поместить содержимое в файл, но он создает пустой файл. Если я печатаю_r($data), я получаю это:
SplFileObject Object
(
[pathName:SplFileInfo:private] => /tmp/419ULk
[fileName:SplFileInfo:private] => 419ULk
[openMode:SplFileObject:private] => w
[delimiter:SplFileObject:private] => ,
[enclosure:SplFileObject:private] => "
)
Он создает файл в /tmp, но я хочу сохранить документ в виде строки, поэтому я отправляю или сохраняю в БД.
Вот моя функция контроллера:
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
потока, см. ответ ниже - person Andrew   schedule 16.03.2018