©
This document uses PHP Chinese website manual Release
(PHP 5 >= 5.2.2)
openssl_pkcs12_read — Parse a PKCS#12 Certificate Store into an array
$pkcs12
, array &$certs
, string $pass
) openssl_pkcs12_read() parses the PKCS#12 certificate store supplied by
pkcs12
into a array named
certs
.
pkcs12
The certificate store contents, not its file name.
certs
On success, this will hold the Certificate Store Data.
pass
Encryption password for unlocking the PKCS#12 file.
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
Example #1 openssl_pkcs12_read() example
<?php
if (! $cert_store = file_get_contents ( "/certs/file.p12" )) {
echo "Error: Unable to read the cert file\n" ;
exit;
}
if ( openssl_pkcs12_read ( $cert_store , $cert_info , "my_secret_pass" )) {
echo "Certificate Information\n" ;
print_r ( $cert_info );
} else {
echo "Error: Unable to read the cert store.\n" ;
exit;
}
?>
[#1] bromatom at directbox dot com [2008-09-01 12:18:46]
To extract the contents of a PKCS12 file you can use file_get_contents as well:
<?php
$certs = array();
$pkcs12 = file_get_contents( "pkcs12file.pem" );
// No password
openssl_pkcs12_read( $pkcs12, $certs, "" );
print_r( $certs );
?>
Output is:
Array
(
[cert] => --- BEGIN CERTIFICATE ---
//snipsnip//
--- END CERTIFICATE ---
[pkey] => --- BEGIN RSA PRIVATE KEY ---
//snipsnip//
[extracerts] = Array
(
)
)