在php中从mysql数据库中获取货币符号[重复]
Posted
技术标签:
【中文标题】在php中从mysql数据库中获取货币符号[重复]【英文标题】:Fetch currency symbol from mysql database in php [duplicate] 【发布时间】:2015-07-24 07:48:21 【问题描述】:使用CHARSET=utf8
创建新数据库,并在其中插入货币符号。
当我尝试使用 mysql_fetch_object
获取带有符号的数据但无法正确显示时。
我已经在标题中添加了 utf8 字符集,如下所示。
&ltmeta http-equiv="Content-Type" content="text/html; charset=utf-8">
但它不显示货币符号。当我在页面上写该符号而不是显示但不是来自数据库时。
【问题讨论】:
This answer 应该可以帮到你。 只需执行以下操作:在php.ini
中设置default_charset = "utf-8"
以上将PHP 的默认字符集更改为utf-8。还要在httpd.conf
中更改 Apache 的字符集如下:AddDefaultCharset UTF-8
然后重新启动 Apache,希望您的问题会得到解决。
【参考方案1】:
好吧,我要说的是,UTF8 对 PHP 来说是一件很痛苦的事情,因为它没有原生支持 (RIP PHP6),并且可以执行一些步骤,以便您可以在您的内容中“完全”支持 utf-8 :
1 - 首先,确保显示内容的脚本编码为 UTF-8(无 BOM)。
2 - 使用mysql_*,您可以指定
mysql_set_charset('utf8', $link);
与
$link = mysql_connect(...);
3 - 它与 UTF-8 无关,但请关闭现在已弃用且可能导致安全问题的 mysql_* 函数。看看PDO
4 - 使用 SQL,您可以指定您希望事务采用 UTF-8 格式:
SET NAMES UTF-8
最终
SET CHARACTER_SET_RESULTS=UTF-8
【讨论】:
PHP 处理 UTF-8 与任何其他语言一样,并且与大多数其他语言具有相同的问题。 “本机不支持”的唯一问题是,在切片或以其他方式操作字符串时,您可能必须使用一些专门的函数,而不是能够使用像$string[0]
这样的语言原语。
@deceze 抱歉,这是我的想法,但现在我意识到这还不够清楚,感谢您的注意 :)
MySQL 中的编码也称为utf8
,而不是UTF-8
。您还应该考虑utf8mb4
。以上是关于在php中从mysql数据库中获取货币符号[重复]的主要内容,如果未能解决你的问题,请参考以下文章