Sample code for 30+ languages & platforms
PHP Extension

Example: Crypt2.GetSignedAttributes method

Demonstrates how to call the GetSignedAttributes method.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

$crypt = new CkCrypt2();

$bdPkcs7 = new CkBinData();
$success = $bdPkcs7->LoadFile('qa_data/cades/CAdES-T/Signature-C-T-1.p7m');
if ($success == false) {
    print $bdPkcs7->lastErrorText() . "\n";
    exit;
}

$json = new CkJsonObject();
$json->put_EmitCompact(false);

$sbJson = new CkStringBuilder();
$i = 0;
$tryNext = true;
while ($tryNext) {
    if ($crypt->GetSignedAttributes($i,$bdPkcs7,$sbJson) == true) {
        $json->LoadSb($sbJson);
        print $i . ': ' . "\n";
        print $json->emit() . "\n";
    }
    else {
        $tryNext = false;
    }

    $i = $i + 1;
}

// Sample output:

// 0: 
// {
//   "signedAttributes": [
//     {
//       "oid": "1.2.840.113549.1.9.3",
//       "name": "Content Type"
//     },
//     {
//       "oid": "1.2.840.113549.1.9.5",
//       "name": "Signing Time"
//     },
//     {
//       "oid": "1.2.840.113549.1.9.4",
//       "name": "Message Digest"
//     },
//     {
//       "oid": "1.2.840.113549.1.9.16.2.47",
//       "name": "Signing Certificate V2"
//     }
//   ]
// }

?>