如何在xml文件(PHP)中添加pdf文档作为代码

如何在xml文件(PHP)中添加pdf文档作为代码,php,xml,pdf,invoice,Php,Xml,Pdf,Invoice,我正在分别为发票创建pdf和xml文件 但现在根据新规则,我需要以代码(base64Binary[rfc2045])的形式发送xml文件中的pdf文档 在PHP中,我使用的是SimpleXMLElement()函数 我应该使用xml中的编码pdf作为标记(附件)中的taxt吗?您可以获取文档内容并转换为base64,然后放入xml标记中 接近它的东西 $file=“file.pdf”; $content=file\u get\u contents($file); $base64=base6

我正在分别为发票创建pdf和xml文件

但现在根据新规则,我需要以代码(base64Binary[rfc2045])的形式发送xml文件中的pdf文档

在PHP中,我使用的是SimpleXMLElement()函数


我应该使用xml中的编码pdf作为标记(附件)中的taxt吗?

您可以获取文档内容并转换为base64,然后放入xml标记中

接近它的东西

$file=“file.pdf”;
$content=file\u get\u contents($file);
$base64=base64_编码($content);
$xml=新的SimpleXMLElement(“”);
$xml->addChild('file',“$base64”);
打印$xml->asXML();

您可以尝试类似的方法

$xmlString = <<<XML 
<?xml version='1.0'?> 
<document> 
    <cmd>login</cmd> 
    <login>Richard</login> 
</document> 
XML; 
$base64Pdf = base64_encode(file_get_contents('/path/to/file.pdf'));
$simpleXml = new SimpleXMLElement($xmlString);
$simpleXml->addChild('document', $base64Pdf);

谢谢你的回答,我也在使用相同的解决方案:)当然,我会的,但请让我检查更多的答案。我尝试了相同的方法,但编码文本太大,并且它的xml文件不完整。我的意思是没有创建xml文件,而只是显示简单的文本。谢谢您的建议。:)elefher,我也尝试了同样的方法,但编码文本太大了,而且它的xml文件也不完整。我的意思是没有创建xml文件,而只是显示简单的文本。尝试将编码的pdf放入CDATA。例如,将其作为一个子项放在XMLhow中,以便对$Allegati->addChild('Attachment',$varPdfBase64)使用CDATA$varPdfBase64=“”;我认为否决票是因为你说你在这方面搜索了很多,但什么也没找到。有很多关于如何做到这一点的图坦卡门!好吧,我会记住这一点:)
$xmlString = <<<XML 
<?xml version='1.0'?> 
<document> 
    <cmd>login</cmd> 
    <login>Richard</login> 
</document> 
XML; 
$base64Pdf = base64_encode(file_get_contents('/path/to/file.pdf'));
$simpleXml = new SimpleXMLElement($xmlString);
$simpleXml->addChild('document', $base64Pdf);
$simpleXml = new SimpleXMLElement($xmlString);
$encodedPdf = $simpleXml->document;
$decodedPdf = base64_decode($encodedPdf);
file_put_contents("/path/to/decoded.pdf", $decodedPdf);