array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'it', ), 'this' => array ( 0 => 'mysqli.set-charset.php', 1 => 'mysqli::set_charset', 2 => 'Sets the client character set', ), 'up' => array ( 0 => 'class.mysqli.php', 1 => 'mysqli', ), 'prev' => array ( 0 => 'mysqli.select-db.php', 1 => 'mysqli::select_db', ), 'next' => array ( 0 => 'mysqli.sqlstate.php', 1 => 'mysqli::$sqlstate', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/mysqli/mysqli/set-charset.xml', ), 'history' => array ( ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); contributors($setup); ?>

mysqli::set_charset

mysqli_set_charset

(PHP 5 >= 5.0.5, PHP 7, PHP 8)

mysqli::set_charset -- mysqli_set_charsetSets the client character set

Descrizione

Stile orientato agli oggetti

public mysqli::set_charset(string $charset): bool

Stile procedurale

mysqli_set_charset(mysqli $mysql, string $charset): bool

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

Elenco dei parametri

link

Solo nello stile procedurale: un identificatore restituito da mysqli_connect() o mysqli_init()

charset

The desired character set.

Valori restituiti

Restituisce true in caso di successo, false in caso di fallimento.

Errori/Eccezioni

If mysqli error reporting is enabled (MYSQLI_REPORT_ERROR) and the requested operation fails, a warning is generated. If, in addition, the mode is set to MYSQLI_REPORT_STRICT, a mysqli_sql_exception is thrown instead.

Esempi

Example #1 mysqli::set_charset() example

Stile orientato agli oggetti

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");

printf("Initial character set: %s\n", $mysqli->character_set_name());

/* change character set to utf8mb4 */
$mysqli->set_charset("utf8mb4");

printf("Current character set: %s\n", $mysqli->character_set_name());

Stile procedurale

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect('localhost', 'my_user', 'my_password', 'test');

printf("Initial character set: %s\n", mysqli_character_set_name($link));

/* change character set to utf8mb4 */
mysqli_set_charset($link, "utf8mb4");

printf("Current character set: %s\n", mysqli_character_set_name($link));

The above examples will output something similar to:

Initial character set: latin1
Current character set: utf8mb4

Note

Nota:

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.

Vedere anche: