PHP 8.3.4 Released!

openssl_pkcs12_export_to_file

(PHP 5 >= 5.2.2, PHP 7, PHP 8)

openssl_pkcs12_export_to_fileExports a PKCS#12 Compatible Certificate Store File

Description

openssl_pkcs12_export_to_file(
    OpenSSLCertificate|string $certificate,
    string $output_filename,
    OpenSSLAsymmetricKey|OpenSSLCertificate|array|string $private_key,
    string $passphrase,
    array $options = []
): bool

openssl_pkcs12_export_to_file() stores certificate into a file named by output_filename in a PKCS#12 file format.

Parameters

x509

See Key/Certificate parameters for a list of valid values.

output_filename

Path to the output file.

private_key

Private key component of PKCS#12 file. See Public/Private Key parameters for a list of valid values.

passphrase

Encryption password for unlocking the PKCS#12 file.

options

Optional array, other keys will be ignored.

Key Description
"extracerts" array of extra certificates or a single certificate to be included in the PKCS#12 file.
"friendly_name" string to be used for the supplied certificate and key

Return Values

Returns true on success or false on failure.

Changelog

Version Description
8.0.0 certificate accepts an OpenSSLCertificate instance now; previously, a resource of type OpenSSL X.509 CSR was accepted.
8.0.0 private_key accepts an OpenSSLAsymmetricKey or OpenSSLCertificate instance now; previously, a resource of type OpenSSL key or OpenSSL X.509 was accepted.
add a note

User Contributed Notes 2 notes

up
0
greejd
5 years ago
please note
the key 'friendlyname' should be 'friendly_name' in args

$args = array(
'friendly_name'=> 'www.example.com'
);
up
-1
lampacz at gmail dot com
14 years ago
[, array $args ] can contain only: extracerts, friendly_name

extracerts - additional certificates (can be file or string)
friendly_name - "friendly name" for the certificate and private key. This name is typically displayed in list boxes by software importing the file.

based on source code version 5.2.8 and pkcs12 man page
To Top