0

我有一个 PHP/MySQL 应用程序,它需要在幕后使用 UTF-8 字符(UTF-8 字符不会显示在屏幕上)。UTF-8 字符来自 PHP cURL 请求。

我需要做什么才能使 PHP 和 MySQL 使用 UTF-8 字符正常运行?

  1. 我需要default_charset = utf-8在 php.ini 中设置吗?还是仅在屏幕上显示数据时使用?

  2. 我是否需要将我的数据库、表和列的字符集/排序规则设置为 utf8/utf8_general_ci?

  3. 我读到还有一个诸如MySQL的连接字符集之类的东西。这真的重要吗?

  4. 还有什么我需要做的吗?

谢谢您的帮助。

4

2 回答 2

1

考虑使用 UTF-8 处理一切,php 文件、HTML 编码和数据库,它将为您省去很多麻烦。您无需在编码之间进行转换,您可以使用所有编码的所有可能字符,并且无需 HTML 实体即可。

我收集了一些关于如何使您的网站仅使用 UTF-8的技巧。如果您已经有一个不同编码的数据库,那没问题,只需告诉连接对象传递 UTF-8。

$db = new mysqli($dbHost, $dbUser, $dbPassword, $dbName);
$db->set_charset('utf8');
于 2012-08-25T19:30:09.970 回答
0

You can use following php in-built functions to iso characters to utf8 charset

utf8_encode(CHARACTERS);
于 2012-08-25T18:45:15.450 回答