slam/php-p7m-reader

v1.2.0 2024-09-25 06:45 UTC

README

Latest Stable Version Downloads Integrate Code Coverage

Installation

composer require slam/php-p7m-reader

Requirements

  1. openssl binary
  2. ext-openssl

Usage

WARNING: the signature is verified, but the validity of the certificate it is not!

$p7mReader = \Slam\P7MReader\P7MReader::decodeFromFile(
    new \SplFileObject('/path/to/my.xml.p7m'),
    __DIR__ . '/tmp'    // Optional custom temporary directory, defaults to sys_get_temp_dir()
);
// OR
$p7mReader = \Slam\P7MReader\P7MReader::decodeFromBase64(
    'Abc==',            // base64 encoded content file
    __DIR__ . '/tmp'    // Optional custom temporary directory, defaults to sys_get_temp_dir()
);

var_dump($p7mReader->getP7mFile());     // string:        The original P7M file
var_dump($p7mReader->getContentFile()); // SplFileObject: The signed content
var_dump($p7mReader->getCertFile());    // SplFileObject: The certificate
var_dump($p7mReader->getCertData());    // array:         Certificate data in openssl_x509_parse output format