mysqli::set_charset

mysqli_set_charset

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

mysqli::set_charset -- mysqli_set_charset設(shè)置默認(rèn)字符編碼

說明

面向?qū)ο箫L(fēng)格

mysqli::set_charset(string $charset): bool

過程化風(fēng)格

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

設(shè)置在數(shù)據(jù)庫間傳輸字符時(shí)所用的默認(rèn)字符編碼。

參數(shù)

mysql

僅以過程化樣式:由mysqli_connect()mysqli_init() 返回的 mysqli 對象。

charset

被設(shè)為默認(rèn)的字符編碼名。

返回值

成功時(shí)返回 true, 或者在失敗時(shí)返回 false

注釋

注意:

如果在Windows平臺(tái)上使用該方法,需要4.1.11版或以上的MySQL客戶端庫,且MySQL版本為5.0.6以上。

注意:

這應(yīng)該是首選的用于改變字符編碼的方法,不建議使用mysqli_query()執(zhí)行SQL請求的SET NAMES ...(如 SET NAMES utf8)。 詳見MySQL字符集的概念

范例

示例 #1 mysqli::set_charset() example

面向?qū)ο箫L(fēng)格

<?php
$mysqli 
= new mysqli("localhost""my_user""my_password""test");

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

/* change character set to utf8 */
if (!$mysqli->set_charset("utf8")) {
    
printf("Error loading character set utf8: %s\n"$mysqli->error);
} else {
    
printf("Current character set: %s\n"$mysqli->character_set_name());
}

$mysqli->close();
?>

過程化風(fēng)格

<?php
$link 
mysqli_connect('localhost''my_user''my_password''test');

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

/* change character set to utf8 */
if (!mysqli_set_charset($link"utf8")) {
    
printf("Error loading character set utf8: %s\n"mysqli_error($link));
} else {
    
printf("Current character set: %s\n"mysqli_character_set_name($link));
}

mysqli_close($link);
?>

以上例程會(huì)輸出:

Current character set: utf8

參見