
mysqli_ssl_set()函数使用 SSL 建立到数据库之间的安全连接。
定义和用法
mysqli_ssl_set()函数使用 SSL 与 MySQL 服务器建立安全连接。
注意:该函数只有在启用 OpenSSL 支持时才有效。
注意:该函数必须在 mysqli_real_connect() 之前调用。
注意:在 PHP 5.3.3 更早版本,MySQL Native Driver 不支持 SSL。自 PHP 5.3+ 起,在微软 Windows 上默认启用 MySQL Native Driver。
语法
mysqli_ssl_set($con, $key, $cert, $ca, $capath, $cipher);
参数
| 序号 | 参数及说明 | 
|---|---|
| 1 | con(必需) 这是一个表示与MySQL Server的连接的对象。 | 
| 2 | key(必需) 这是一个字符串变量,表示密钥文件路径的名称。 | 
| 3 | cert(必需) 这是一个字符串变量,表示证书文件的名称。 | 
| 4 | ca(必需) 这是一个字符串变量,表示证书颁发机构文件的路径名称。 | 
| 5 | capath(必需) 这是一个字符串变量,表示包含PEM格式的SSL CA证书的目录的路径名称。 | 
| 6 | cipher(必需) SSL 加密允许使用的算法清单。 | 
返回值
此函数返回布尔值,如果成功,则返回true;如果失败,则返回false。
PHP版本
此函数最初是在PHP版本5中引入的,并且可以在所有更高版本中使用。
在线示例
以下示例演示了mysqli_ssl_set()函数的用法(面向过程风格)-
<?php
   //建立连接
   $con = new mysqli("localhost", "root","password","test");
   //安全连接
   $con->ssl_set("key.pem", "cert.pem", "cacert.pem", NULL, NULL);
   //建立连接
   $con = $con->real_connect("localhost","root","password","test");
   if($con){
      print("已成功建立连接");
   }else{
      print("连接失败 ". mysqli_connect_error());
   }
?>输出结果
已成功建立连接
在线示例
在面向对象风格中,此函数的语法为$con->ssl_set();。以下是面向对象风格中此函数的示例;
<?php
   //建立连接
   $con = new mysqli("localhost", "root","password","test");
   //安全连接
   $con->ssl_set("key.pem", "cert.pem", "cacert.pem", NULL, NULL);
   //建立连接
   $con = $con->real_connect("localhost","root","password","test");
   if($con){
      print("已成功建立连接");
   }else{
      print("连接失败 ". mysqli_connect_error());
   }
?>输出结果
已成功建立连接
