Documentation Home
MySQL PHP API
Download this Manual
PDF (US Ltr) - 2.8Mb
PDF (A4) - 2.8Mb
EPUB - 457.0Kb
HTML Download (TGZ) - 396.3Kb
HTML Download (Zip) - 410.1Kb


MySQL PHP API  /  ...  /  mysqli::set_charset, mysqli_set_charset

3.9.52 mysqli::set_charset, mysqli_set_charset

Copyright 1997-2014 the PHP Documentation Group.

  • mysqli::set_charset

    mysqli_set_charset

    Sets the default client character set

Description

Object oriented style

bool mysqli::set_charset(string charset);

Procedural style

bool mysqli_set_charset(mysqli link,
                        string charset);

Sets the default character set to be used when sending data from and to the database server.

Parameters

link

Procedural style only: A link identifier returned by mysqli_connect or mysqli_init

charset

The charset to be set as default.

Return Values

Returns TRUE on success or FALSE on failure.

Notes

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 set it (such as SET NAMES utf8) is not recommended. See the MySQL character set concepts section for more information.

Examples

Example 3.68 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();
}

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


See Also

mysqli_character_set_name
mysqli_real_escape_string
MySQL character set concepts
List of character sets that MySQL supports


User Comments
Sign Up Login You must be logged in to post a comment.