PHP8 openssl_csr_get_subject

2024-03-11 16:52 更新

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

openssl_csr_get_subject — 返回 CSR 的主題

說明

openssl_csr_get_subject(OpenSSLCertificateSigningRequest|string $csr, bool $short_names = true): array|false

openssl_csr_get_subject() 返回 csr 中專有名稱信息的主題,其中包含了通用名稱(CN)、機構(gòu)名稱(O)、國家名(C)等字段。

參數(shù) 

csr

See CSR parameters for a list of valid values.

short_names

shortnames 控制著數(shù)據(jù)如何在數(shù)組中被索引 - 如果 shortnames 為 true (默認) 將使用簡稱形式對字段進行索引,否則將使用全稱形式 - 比如: CN 就是 commonName 的簡稱形式。

返回值 

返回帶有主題描述的關(guān)聯(lián)數(shù)組, 或者在失敗時返回 false。

更新日志 

版本說明
8.0.0csr 現(xiàn)在接受 OpenSSLCertificateSigningRequest 實例;之前接受類型 OpenSSL X.509 CSR 的 resource。

示例 

示例 #1 openssl_csr_get_subject() 示例

<?php
$subject = array(
    "countryName" => "CA",
    "stateOrProvinceName" => "Alberta",
    "localityName" => "Calgary",
    "organizationName" => "XYZ Widgets Inc",
    "organizationalUnitName" => "PHP Documentation Team",
    "commonName" => "Wez Furlong",
    "emailAddress" => "wez@example.com",
);
$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));
?>

以上示例的輸出類似于:

Array
(
    [C] => CA
    [ST] => Alberta
    [L] => Calgary
    [O] => XYZ Widgets Inc
    [OU] => PHP Documentation Team
    [CN] => Wez Furlong
    [emailAddress] => wez@example.com
)

參見 

  • openssl_csr_new() - 生成一個 CSR
  • openssl_csr_get_public_key() - 返回 CSR 的公鑰
  • openssl_x509_parse() - 解析一個 X509 證書并作為一個數(shù)組返回信息


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號