使用包含特殊字符的字符串搜索mysql数据库

时间:2014-04-15 13:17:00

标签: php mysql utf-8

所以我正在为Shopify构建一个应用程序。由于Shopify的工作方式,我们恼人地不得不按名称处理供应商,而不是使用数字uid。

这给我们带来了一些问题。我们有一个从Shopify导入我们数据库的供应商为“ColecciónLuna”。执行以下操作很好:

SELECT email FROM vendors WHERE name=('Colección Luna') LIMIT 1

这将返回我们要查找的数据。但是,在php中,如果我们这样做:

$row = mysql_fetch_row(mysql_query("SELECT name FROM vendors WHERE name=('Colección Luna') LIMIT 1"));

echo $row[0];

这将输出:

Colecciu00f3n Luna

这是一个问题,因为我们在处理它们的所有情况下都使用供应商名称作为我们的uid。使用我们从数据库中获取的名称来查找电子邮件会导致我们的sql语句如下所示:

SELECT email FROM vendors WHERE name=('Colecciu00f3n Luna') LIMIT 1

由于字符不同,最终找不到我们正在寻找的数据。

我假设php默认在utf-8中编码其字符串,有没有办法可以强制它以与数据库相同的格式输出字符串?

非常感谢提前。

0 个答案:

没有答案