mysql_set_charset()
sẽ là một tùy chọn - nhưng là một tùy chọn giới hạn đối với ext/mysql
. Đối với ext/mysqli
đó là mysqli_set_charset
và cho PDO
::mysql
bạn cần chỉ định một tham số kết nối.
Vì việc sử dụng hàm này dẫn đến một lệnh gọi MySQL API, nó sẽ được coi là nhanh hơn nhiều so với việc phát hành một truy vấn.
Về hiệu suất, cách nhanh nhất để đảm bảo giao tiếp dựa trên UTF-8 giữa tập lệnh của bạn và máy chủ MySQL đang thiết lập máy chủ MySQL một cách chính xác. Dưới dạng SET NAMES x
là tương đương
đến
SET character_set_client = x;
SET character_set_results = x;
SET character_set_connection = x;
trong khi SET character_set_connection = x
nội bộ cũng thực thi SET collation_connection = <<default_collation_of_character_set_x>>
bạn cũng có thể đặt các biến máy chủ này
tĩnh trong my.ini/cnf
của bạn .
Vui lòng lưu ý các sự cố có thể xảy ra với các ứng dụng khác đang chạy trên cùng một phiên bản máy chủ MySQL và yêu cầu một số bộ ký tự khác.