(PHP 5 >= 5.0.5, PHP 7)
mysqli::set_charset -- mysqli_set_charset — Establece el conjunto de caracteres predeterminado del cliente
Estilo orientado a objetos
$charset
) : boolEstilo por procedimientos
Establece el conjunto de caracteres predeterminado a usar cuando se envían datos desde y hacia el servidor de la base de datos.
link
Sólo estilo por procediminetos: Un identificador de enlace devuelto por mysqli_connect() o mysqli_init()
charset
El conjunto de caracteres a establecer como predeterminado.
Devuelve TRUE
en caso de éxito o FALSE
en caso de error.
Nota:
Para usar esta función en una plataforma Windows se necesita la biblioteca cliente de MySQL version 4.1.11 o superior (para MySQL 5.0 se necesita 5.0.6 o superior).
Nota:
Esta es la mejor forma de cambiar el conjunto de caracteres. No se recomienda usar mysqli_query() para establecerlo (como SET NAMES utf8). Véase la sección Conceptos del conjunto de caracteres de MySQL para más información.
Ejemplo #1 Ejemplo de mysqli::set_charset()
Estilo orientado a objetos
<?php
$mysqli = new mysqli("localhost", "mi_usuario", "mi_contraseña", "test");
/* verificar la conexión */
if (mysqli_connect_errno()) {
printf("Falló la conexión: %s\n", mysqli_connect_error());
exit();
}
printf("Conjunto de caracteres inicial: %s\n", $mysqli->character_set_name());
/* cambiar el conjunto de caracteres a utf8 */
if (!$mysqli->set_charset("utf8")) {
printf("Error cargando el conjunto de caracteres utf8: %s\n", $mysqli->error);
exit();
} else {
printf("Conjunto de caracteres actual: %s\n", $mysqli->character_set_name());
}
$mysqli->close();
?>
Estilo por procedimientos
<?php
$enlace = mysqli_connect('localhost', 'mi_usuario', 'mi_contraseña', 'test');
/* verificar la conexión */
if (mysqli_connect_errno()) {
printf("Falló la conexión: %s\n", mysqli_connect_error());
exit();
}
printf("Conjunto de caracteres inicial: %s\n", mysqli_character_set_name($enlace));
/* cambiar el conjunto de caracteres a utf8 */
if (!mysqli_set_charset($enlace, "utf8")) {
printf("Error cargando el conjunto de caracteres utf8: %s\n", mysqli_error($enlace));
exit();
} else {
printf("Conjunto de caracteres actual: %s\n", mysqli_character_set_name($enlace));
}
mysqli_close($enlace);
?>
El resultado de los ejemplos sería algo similar a:
Conjunto de caracteres inicial: latin1 Conjunto de caracteres actual: utf8