(PHP ActiveX) Extract XML from FatturaPA .p7m
Demonstrates how to verify the signature and extract the XML from a FatturaPA .p7m file.
<?php
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
$bd = new COM("Chilkat_9_5_0.BinData");
$success = $bd->LoadFile('qa_data/p7m/IT01879020517_abc.xml.p7m');
if ($success != 1) {
print 'Failed to load the .p7m file' . "\n";
exit;
}
$crypt = new COM("Chilkat_9_5_0.Crypt2");
// Verify and extrct the payload contained within the .p7m.
// In this case, the payload is the FatturaPA XML.
// If successful, the resulting bd will contain only the XML.
$bVerified = $crypt->OpaqueVerifyBd($bd);
if ($bVerified != 1) {
print $crypt->LastErrorText . "\n";
print 'Failed to extract and verify.' . "\n";
exit;
}
// Save the XML to a file.
$bd->WriteFile('qa_output/zIT01879020517_abc.xml');
// Alternatively, load into an XML object and emit.
$xml = new COM("Chilkat_9_5_0.Xml");
$xml->LoadXml($bd->getString('utf-8'));
print $xml->getXml() . "\n";
?>
|