(PHP 5 >= 5.2.0, PHP 7)
openssl_csr_get_subject — Returns the subject of a CSR
openssl_csr_get_subject ( mixed $csr [, bool $use_shortnames = true ] ) : array|false
 openssl_csr_get_subject() returns subject distinguished name information encoded in the csr including fields commonName (CN), organizationName (O), countryName (C) etc. 
csr
See CSR parameters for a list of valid values.
use_shortnames
 shortnames controls how the data is indexed in the array - if shortnames is true (the default) then fields will be indexed with the short name form, otherwise, the long name form will be used - e.g.: CN is the shortname form of commonName. 
 Returns an associative array with subject description, or false on failure. 
Example #1 openssl_csr_get_subject() example
<?php $subject = array( "countryName" => "CA", "stateOrProvinceName" => "Alberta", "localityName" => "Calgary", "organizationName" => "XYZ Widgets Inc", "organizationalUnitName" => "PHP Documentation Team", "commonName" => "Wez Furlong", "emailAddress" => "[email protected]", ); $private_key = openssl_pkey_new(array( "private_key_bits" => 2048, "private_key_type" => OPENSSL_KEYTYPE_RSA, )); $configargs = array( 'digest_alg' => 'sha512WithRSAEncryption' ); $csr = openssl_csr_new($subject, $privkey, $configargs); print_r(openssl_csr_get_subject($csr)); ?>
The above example will output something similar to:
Array
(
    [C] => CA
    [ST] => Alberta
    [L] => Calgary
    [O] => XYZ Widgets Inc
    [OU] => PHP Documentation Team
    [CN] => Wez Furlong
    [emailAddress] => [email protected]
)
    © 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
    https://www.php.net/manual/en/function.openssl-csr-get-subject.php