mysqli::set_charset
(PHP 5 >= 5.0.5, PHP 7, PHP 8)
mysqli::set_charset -- mysqli_set_charset — 클라이언트 문자 집합을 설정합니다.
설명
객체 지향 스타일
public mysqli::set_charset(string $charset
): bool
절차적 스타일
mysqli_set_charset(mysqli $mysql
, string $charset
): bool
데이터베이스 서버와 데이터를 주고받을 때 사용할 문자 집합을 설정합니다.
매개변수
mysql
- 절차적 스타일 전용: mysqli_connect() 또는 mysqli_init()에 의해 반환된 mysqli 객체
charset
- 원하는 문자 집합입니다.
반환 값
성공하면 true
를, 실패하면 false
를 반환합니다.
Examples
예제 #1 mysqli::set_charset() 예제
객체 지향 스타일
<?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());
절차적 스타일
<?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));
위의 예는 다음과 유사한 결과를 출력합니다.
Initial character set: latin1 Current character set: utf8mb4
노트
메모: Windows 플랫폼에서 이 함수를 사용하려면 MySQL 클라이언트 라이브러리 버전 4.1.11 이상이 필요합니다(MySQL 5.0의 경우 5.0.6 이상이 필요).
메모: 이것은 문자 집합을 변경하는 데 선호되는 방법입니다. mysqli_query()를 사용하여 설정(예: SET NAMES utf8)하는 것은 권장되지 않습니다. 자세한 내용은 MySQL 문자 집합 개념 섹션을 참조하세요.
기타
- mysqli_character_set_name() - 데이터베이스 연결의 현재 문자 집합을 반환합니다.
- mysqli_real_escape_string() - 연결의 현재 문자 집합을 고려하여 SQL 문에서 사용하기 위해 문자열의 특수 문자를 이스케이프합니다.
- MySQL 문자 집합 개념
- » MySQL이 지원하는 문자 집합 목록