我创建了一个 php 网站,它只会从 mysql 数据库中加载文本,当我在浏览器中打开它时,阿拉伯文本以乱码显示,但是当我将浏览器的编码更改为 UTF-8 时,它会正确显示,怎么能我强制编码为 UTF-8,所以用户不必更改它?
网站的菜单部分也从同一数据库加载菜单项(不同的表,它们都有相同的联盟“utf8_unicode_ci”),但它们都显示为问号。我怎样才能解决这个问题?
您可以在 test.bdsfilmfest.com 上查看网站
先感谢您 :)
默认情况下,您的 Web 服务器可能会发送iso-8859-1
内容类型标头。
要么改变网络服务器的行为——应该可以做一个
AddDefaultCharset utf-8
在.htaccess
您网站根目录的文件中。
或在每个单独的文件中覆盖 PHP 中的标头:
header("Content-Type: text/html; charset=utf-8");
最简单的方法是在某处设置default_charset(可能在 apache vhost conf、php.ini 或 .htaccess 文件中),这样您就不必在每个脚本中重复发送正确的标头。
取消注释:
<!--<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />!-->