PHP控制器跳转中文乱码问题通常是由于字符编码不一致导致的。字符编码包括UTF-8、GBK等,如果前端页面和后端处理不一致,就会出现乱码。
确保HTML页面的<head>部分包含以下meta标签:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>中文页面</title>
</head>
<body>
<!-- 页面内容 -->
</body>
</html>在PHP脚本的开头添加以下代码,设置脚本的字符编码:
header('Content-Type: text/html; charset=utf-8');如果使用MySQL数据库,可以在连接数据库后设置字符编码:
$mysqli = new mysqli("localhost", "username", "password", "database");
$mysqli->set_charset("utf8");确保PHP文件本身也是UTF-8编码,可以使用编辑器(如VSCode、Sublime Text)检查和修改文件编码。
以下是一个完整的PHP控制器示例,展示了如何处理中文乱码问题:
<?php
header('Content-Type: text/html; charset=utf-8');
// 连接数据库
$mysqli = new mysqli("localhost", "username", "password", "database");
if ($mysqli->connect_error) {
die("连接失败: " . $mysqli->connect_error);
}
$mysqli->set_charset("utf8");
// 查询数据
$sql = "SELECT * FROM users";
$result = $mysqli->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
}
} else {
echo "0 结果";
}
$mysqli->close();
?>通过以上方法,可以有效解决PHP控制器跳转中文乱码问题。
没有搜到相关的文章