PHP mysqli ssl_set() 函数
示例 - 面向对象风格
创建 SSL 连接
<?php
$mysqli = mysqli_init();
if (!$mysqli) {
die("mysqli_init 失败");
}
$mysqli -> ssl_set("key.pem", "cert.pem", "cacert.pem", NULL, NULL);
if (!$mysqli -> real_connect("localhost","my_user","my_password","my_db")) {
die("连接错误: " . mysqli_connect_error());
}
// 一些查询...
$mysqli -> close();
?>
查看底部过程式风格的示例。
定义和用法
ssl_set() / mysqli_ssl_set() 函数用于使用 SSL 建立安全连接。但是,除非启用 OpenSSL 支持,否则此函数不会执行任何操作。
注意: 此函数必须在 real_connect() 之前调用。
注意: 在 PHP 5.3.3 之前,MySQL Native Driver 不支持 SSL。从 PHP 5.3+ 开始,MySQL Native Driver 在 Microsoft Windows 上默认启用。
语法
面向对象风格
$mysqli -> ssl_set(key, cert, ca, capath, cipher)
过程式风格
mysqli_ssl_set(connection, key, cert, ca, capath, cipher)
参数值
参数 | 描述 |
---|---|
connection | 必需。指定要使用的 MySQL 连接 |
key | 必需。指定密钥文件路径名称 |
cert | 必需。指定证书文件路径名称 |
ca | 必需。指定证书颁发机构文件路径。 |
capath | 必需。指定包含 PEM 格式的受信任 SSL CA 证书的目录路径。 |
cipher | 必需。指定用于 SSL 加密的允许密码列表。 |
技术细节
返回值 | 始终为 TRUE。如果 SSL 设置不正确,当您尝试连接时,real_connect() 将返回错误。 |
---|---|
PHP 版本 | 5+ |
示例 - 过程式风格
创建 SSL 连接
<?php
$con = mysqli_init();
if (!$con) {
die("mysqli_init 失败");
}
mysqli_ssl_set($con, "key.pem", "cert.pem", "cacert.pem", NULL, NULL);
if (!mysqli_real_connect($con, "localhost", "my_user", "my_password", "my_db")) {
die("连接错误: " . mysqli_connect_error());
}
// 一些查询...
mysqli_close($con);
?>
❮ PHP MySQLi 参考