牛牛在线工具

openssl_pkcs7_read()

收录 8868 个 PHP 函数,含用途说明与用法示例。

openssl_pkcs7_read()

从 PKCS#7 格式的文件中读取证书和 CRL

函数名称:openssl_pkcs7_read() 函数描述:openssl_pkcs7_read() 函数从 PKCS#7 格式的文件中读取证书和 CRL。 适用版本:PHP 4 >= 4.0.6, PHP 5, PHP 7 用法:openssl_pkcs7_read(string $filename, array &$certs, array &$crls) : bool 参数: $filename:PKCS#7 格式的文件路径。 &$certs:用于存储证书的数组。 &$crls:用于存储 CRL(证书吊销列表)的数组。 返回值:成功时返回 true,失败时返回 false。 示例: $filename = 'path/to/pkcs7.p7b'; $certs = []; $crls = []; if (openssl_pkcs7_read($filename, $certs, $crls)) { echo "证书数量:" . count($certs) . "\n"; foreach ($certs as $cert) { echo "证书内容:\n" . openssl_x509_export($cert) . "\n"; } echo "CRL 数量:" . count($crls) . "\n"; foreach ($crls as $crl) { echo "CRL 内容:\n" . openssl_crl_export($crl) . "\n"; } } else { echo "读取 PKCS#7 文件失败。\n"; } 注意事项: 该函数需要 OpenSSL 扩展的支持,确保 PHP 安装了 OpenSSL 扩展。 PKCS#7 文件通常使用 .p7b 或 .p7c 扩展名。 证书和 CRL 会以 X.509 格式返回,可以使用 openssl_x509_export() 和 openssl_crl_export() 函数进一步处理。 如果 PKCS#7 文件中包含多个证书或 CRL,它们会被依次存储在 $certs 和 $crls 数组中。可以通过遍历数组来处理每个证书或 CRL。