此函数如果密钥有密码,确实会返回 TRUE,您只需要以函数可以理解的方式设置数据即可。这里没有记录。
此错误消息导致我找到了解决方案
PHP Warning: openssl_x509_check_private_key(): key array must be of the form array(0 => key, 1 => phrase)
所以这样就可以工作了
$certFile = file_get_contents('cert.crt');
$keyFile = file_get_contents('cert.key');
$keyPassphrase = "password1234";
$keyCheckData = array(0=>$keyFile,1=>$keyPassphrase);
$result = openssl_x509_check_private_key($certFile,$keyCheckData);