函数名称:openssl_x509_read()
适用版本:PHP 4 >= 4.0.6, PHP 5, PHP 7
函数说明:openssl_x509_read() 函数从一个PEM编码的证书中读取一个X.509证书资源。
语法:resource openssl_x509_read ( mixed $x509certdata )
参数:
- $x509certdata:PEM编码的证书数据,可以是一个文件路径、一个PEM格式的证书字符串或一个已经读取到的文件资源。
返回值:成功时返回一个X.509证书资源,失败时返回 FALSE。
示例:
- 从文件中读取X.509证书:
$certfile = 'path/to/certificate.pem';
$certdata = file_get_contents($certfile);
$cert = openssl_x509_read($certdata);
if ($cert === false) {
echo "Failed to read the certificate.";
} else {
echo "Certificate read successfully.";
openssl_x509_free($cert); // 释放资源
}
- 从字符串中读取X.509证书:
$certdata = '-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----';
$cert = openssl_x509_read($certdata);
if ($cert === false) {
echo "Failed to read the certificate.";
} else {
echo "Certificate read successfully.";
openssl_x509_free($cert); // 释放资源
}
注意:在使用完openssl_x509_read()函数后,应该使用openssl_x509_free()函数释放资源,以避免内存泄漏。