PHP mysqli ssl_set() Function
Example - Object Oriented style
Create an SSL connection:
<?php
$mysqli = mysqli_init();
if (!$mysqli) {
die("mysqli_init failed");
}
$mysqli -> ssl_set("key.pem", "cert.pem", "cacert.pem", NULL, NULL);
if (!$mysqli -> real_connect("localhost","my_user","my_password","my_db"))
{
die("Connect Error: " . mysqli_connect_error());
}
// Some queries...
$mysqli -> close();
?>
Look at example of procedural style at the bottom.
Definition and Usage
The ssl_set() / mysqli_ssl_set() function is used to establish secure connections using SSL. However, this function does nothing unless OpenSSL support is enabled.
Note: This function must be called before real_connect().
Note: MySQL Native Driver does not support SSL before PHP 5.3.3. MySQL Native Driver is enabled by default on Microsoft Windows from PHP 5.3+.
Syntax
Object oriented style:
$mysqli -> ssl_set(key, cert, ca, capath, cipher)
Procedural style:
mysqli_ssl_set(connection, key, cert, ca, capath, cipher)
Parameter Values
Parameter | Description |
---|---|
connection | Required. Specifies the MySQL connection to use |
key | Required. Specifies the path name to the key file |
cert | Required. Specifies the path name to the certificate file |
ca | Required. Specifies the path name to the certificate authority file |
capath | Required. Specifies the pathname to a directory that contains trusted SSL CA certificates in PEM format |
cipher | Required. Specifies a list of allowable ciphers to use for SSL encryption |
Technical Details
Return Value: | Always TRUE. If SSL setup is incorrect, real_connect() will return an error when you try to connect |
---|---|
PHP Version: | 5+ |
Example - Procedural style
Create an SSL connection:
<?php
$con = mysqli_init();
if (!$con) {
die("mysqli_init failed");
}
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("Connect Error: " . mysqli_connect_error());
}
// Some queries...
mysqli_close($con);
?>
❮ PHP MySQLi Reference