(PHP 5 >= 5.0.5, PHP 7, PHP 8)
mysqli::set_charset -- mysqli_set_charset — 設(shè)置默認(rèn)字符編碼
面向?qū)ο箫L(fēng)格
$charset
): bool過(guò)程化風(fēng)格
設(shè)置在數(shù)據(jù)庫(kù)間傳輸字符時(shí)所用的默認(rèn)字符編碼。
mysql
僅以過(guò)程化樣式:由mysqli_connect() 或 mysqli_init() 返回的 mysqli 對(duì)象。
charset
被設(shè)為默認(rèn)的字符編碼名。
成功時(shí)返回 true
, 或者在失敗時(shí)返回 false
。
注意:
如果在Windows平臺(tái)上使用該方法,需要4.1.11版或以上的MySQL客戶端庫(kù),且MySQL版本為5.0.6以上。
注意:
這應(yīng)該是首選的用于改變字符編碼的方法,不建議使用mysqli_query()執(zhí)行SQL請(qǐng)求的
SET NAMES ...
(如SET NAMES utf8
)。 詳見(jiàn)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();
?>
過(guò)程化風(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