CakePHP读取生成的PDF并将其作为字节发送

时间:2013-03-11 10:49:48

标签: php file cakephp pdf

在我的webapp中,当用户转到此URL时,我可以使用gedooo从多个odt文件生成pdf文件:http://{base_url}/models/generer/{doc_id},modelsController生成pdf并在导航器上启动下载。

现在我必须通过webservice向模型中的pdf内容(如电子邮件中的附件)发送远程应用程序。问题是执行pdf生成并将其集成到我的请求中,而不将其作为文件存储在服务器上。我试着做类似的事情:

$pdf = new File('http://{base_url}/models/generer/{doc_id}');
$content = $pdf->read();

我得到一个错误。我没有想法,我需要你的帮助。

2 个答案:

答案 0 :(得分:2)

您无法传输PDF(二进制文件)。

如果你想在webservice中传输它,你必须将它转换为base64

$file = file_get_contents('http://{base_url}/models/generer/{doc_id}');
$filedata = base64_encode($file);

现在您可以在webservice中发送此数据

echo json_encode(array('file'=>$filedata));

答案 1 :(得分:0)

我找到了解决方案!

$this->requestAction($url);

将该文件写入我的webapp文件夹中

$content = file_get_contents($local_url)