适用于 Python 程序员的 PHP : UTF-8 Issues

标签 php python mysql apache utf-8

我有一个开源 PHP 网站,我打算修改/翻译它(主要是常量字符串),以便日本用户可以使用它。

原代码为PHP+MySQL+Apache,用英文编写,charset=utf-8

例如,我想将“login”一词更改为日语对应的“ログイン”等

我不确定是否必须将 PHP 代码保存为 utf-8 格式(就像 Python 一样)?

我只有 Python 经验,那么我还应该注意哪些其他问题?

最佳答案

如果它在文件中,那么是的,您需要将文件保存为 UTF-8。

如果它在数据库中,则无需将 PHP 文件保存为 UTF-8。

在 PHP 中,字符串基本上就是二进制 blob。您需要将文件保存为 UTF-8,以便读入正确的字节。理论上,如果您将原始字节保存在 ANSI 文件中,它仍然会正确输出到浏览器,只是您的编辑器不会显示它正确的话,您将面临编辑器错误操作的风险。

此外,在处理非 ANSI 字符串时,您需要小心使用字符串操作函数的多字节版本(例如,str_replace 可能会弄乱 utf-8 字符串)。

关于适用于 Python 程序员的 PHP : UTF-8 Issues,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10868473/

相关文章:

PHP 无法从 mysql 中提取数据

PHP 将同级页面显示为一组图像

php - 通过 yii2 Html a() 发送 post 参数

python - plotly :如何防止标题与 plotly 重叠?

python - 为什么 Celery 在 Python shell 中工作,但在我的 Django View 中却不工作? (导入问题)

python - 如何拥有同时满足 Windows 和 Linux 的 setup.py 文件?

Mysql复杂查询如果没有找到记录则生成计数为零的所有表

php - 可变产品属性 : Customizing each displayed radio buttons text value

php - 从数据库获取 Google map 标记到 map

php - jQuery UI 自动完成,使用 PHP/MySQL 搜索 2 个表