【发布时间】:2015-07-30 12:56:50
【问题描述】:
在 PHP 中有一系列函数用于处理包含多字节字符的字符串。
我在这里指的是这个列表:http://php.net/manual/en/ref.mbstring.php
我需要知道 MySQL 的 LOWER() 函数是否等同于 PHP 的 mb_strtolower() 函数。
我想确保这两个函数的结果是相同的。
我将使用 UTF-8 编码的这两个函数。
【问题讨论】:
-
是的,它们会返回相同的结果。
-
请确保您使用 MySQL LOWER() 函数将 php 客户端连接设置为 utf8。 php 默认为 latin1。您可以使用此
mysql_set_charset('utf8')设置 utf8(注意 mysql_* 函数已弃用)mysqli_set_charset('utf8')或在 de PDO dsn 字符串 "mysql:host=$host;dbname=$db;charset=utf8" 如果您使用较低的 PHP 版本在 5.2.3 之后,您需要在数据库连接代码之后使用查询SET NAMES utf8 -
你在 MySQL 中使用了什么
COLLATION? -
@RaymondNijland 我正在使用 mysqli 和 UTF-8,就像你说的那样。
-
@RickJames utf8_general_ci
标签: php mysql string utf-8 multibyte