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.
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).
This is the preferred way to change the charset. Using mysqli_query() to set it (such as SET NAMES utf8) is not recommended. See the MySQL character set concepts section for more information.
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(); } printf("Initial character set: %s\n", $mysqli->character_set_name()); /* change character set to utf8 */ if (!$mysqli->set_charset("utf8")) { printf("Error loading character set utf8: %s\n", $mysqli->error); exit(); } 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(); } printf("Initial character set: %s\n", mysqli_character_set_name($link)); /* change character set to utf8 */ if (!mysqli_set_charset($link, "utf8")) { printf("Error loading character set utf8: %s\n", mysqli_error($link)); exit(); } else { printf("Current character set: %s\n", mysqli_character_set_name($link)); } mysqli_close($link); ?>
The above examples will output something similar to:
Initial character set: latin1 Current character set: utf8
Please login to continue.