使用PHP在MSSQL中存储UTF-8文本

时间:2015-03-11 10:46:10

标签: php sql-server utf-8

我要做的是用PHP将UTF-8文本保存到MSSQL数据库。

我知道MSDS对于UTF-8并不那么酷。但我得到了奇怪的结果。

  • 在SQL Server Management Studio(SSMS)中,我打开编辑表数据屏幕,并将西里尔字母和阿拉伯字符插入字段中。它们似乎得到了正确的保存。每个字符需要一个字节。我在SSMS上查看它很好,但是当我从PHP中提取它时会产生乱码。

  • 在PHP中,我使用INSERT语法来保存与上面相同的数据。它保存得很好,当我选择它时,它会像插入时一样打印正确的UTF-8数据。但这一次在SSMS上看起来很乱。并且每个字符占用两个字节。

我的问题:这是正常的吗?这是所有人用PHP + MSSQL + UTF-8获得的吗?我是否应该接受这样一个事实:每个字符需要两个字节,通过SSMS无法读取...这是正确的吗?

截图

enter image description here

  • 第一行是通过PHP插入的。从PHP读到很好,乱用到SSMS。
  • 通过SSMS插入第二行。 PHP选择时打印乱码。

0 个答案:

没有答案