(PHP 5 >= 5.0.5, PHP 7)
mysqli::set_charset -- mysqli_set_charset — Задает набор символов по умолчанию
Объектно-ориентированный стиль
$charset
)Процедурный стиль
Задает набор символов по умолчанию, который будет использоваться при обмене данными с сервером баз данных.
link
Только для процедурного стиля: Идентификатор соединения, полученный с помощью mysqli_connect() или mysqli_init()
charset
Набор символов, который необходимо установить.
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Замечание:
Чтобы использовать эту функцию на Windows платформах, вам потребуется клиентская библиотека MySQL версии 4.1.11 или выше (для MySQL 5.0 соответственно 5.0.6 или выше).
Замечание:
Это предпочтительный способ задания набора символов. Использование для этих целей функции mysqli_query() (например SET NAMES utf8) не рекомендуется. Дополнительно см. Наборы символов в MySQL.
Пример #1 Пример использования mysqli::set_charset()
Объектно-ориентированный стиль
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");
/* проверка соединения */
if (mysqli_connect_errno()) {
printf("Не удалось подключиться: %s\n", mysqli_connect_error());
exit();
}
printf("Изначальная кодировка: %s\n", $mysqli->character_set_name());
/* изменение набора символов на utf8 */
if (!$mysqli->set_charset("utf8")) {
printf("Ошибка при загрузке набора символов utf8: %s\n", $mysqli->error);
exit();
} else {
printf("Текущий набор символов: %s\n", $mysqli->character_set_name());
}
$mysqli->close();
?>
Процедурный стиль
<?php
$link = mysqli_connect('localhost', 'my_user', 'my_password', 'test');
/* проверка соединения */
if (mysqli_connect_errno()) {
printf("Не удалось подключиться: %s\n", mysqli_connect_error());
exit();
}
printf("Изначальная кодировка: %s\n", $mysqli->character_set_name());
/* изменение набора символов на utf8 */
if (!mysqli_set_charset($link, "utf8")) {
printf("Ошибка при загрузке набора символов utf8: %s\n", mysqli_error($link));
exit();
} else {
printf("Текущий набор символов: %s\n", mysqli_character_set_name($link));
}
mysqli_close($link);
?>
Результат выполнения данных примеров:
Изначальная кодировка: latin1 Текущий набор символов: utf8