(PHP 5 >= 5.0.5)
mysqli::set_charset -- mysqli_set_charset — Sets the default client character set
Object oriented style
Procedural style
Sets the default character set to be used when sending data from and to the database server.
Procedural style only: A link identifier returned by mysqli_connect() or mysqli_init()
The charset to be set as default.
Returns TRUE on success or FALSE on failure.
Note: To use this function on a Windows platform you need MySQL client library version 4.1.11 or above (for MySQL 5.0 you need 5.0.6 or above).
Note: This is the preferred way to change the charset. Using mysqli::query() to execute SET NAMES .. is not recommended.
Example #1 mysqli::set_charset example
Object oriented style
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* change character set to utf8 */
if (!$mysqli->set_charset("utf8")) {
printf("Error loading character set utf8: %s\n", $mysqli->error);
} else {
printf("Current character set: %s\n", $mysqli->character_set_name());
}
$mysqli->close();
?>
Procedural style
<?php
$link = mysqli_connect('localhost', 'my_user', 'my_password', 'test');
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* change character set to utf8 */
if (!mysqli_set_charset($link, "utf8")) {
printf("Error loading character set utf8: %s\n", mysqli_error($link));
} else {
printf("Current character set: %s\n", mysqli_character_set_name($link));
}
mysqli_close($link);
?>
The above examples will output:
Current character set: utf8