【发布时间】:2016-02-02 01:20:12
【问题描述】:
我有一个 users 表,其中 Collation as utf8_general_ci。具有姓名、年龄、电话和电子邮件等字段。
名称字段的某些行似乎有一些尾随空格。如果回显echo "selectedUser " . $selectedUser->name;它正在打印带有空格的名称,我只是从 DB 字段中复制了名称并将其粘贴到一个 php 文件中,并回显了该文本,它的打印就像
selectedUser "Rohan Harish Reddy\u00a0\u00a0"
name 字段仅包含字段尾随空格,我不确定
为什么会这样打印?为什么它不适用于 json_encode ? 如何使用 json_encode 转换这个 user 对象?
代码:
$users = $stmt->fetchAll(PDO::FETCH_OBJ);
foreach ($users as $user) {
$selectedUser = $user;
echo "selectedUser " . json_encode($selectedUser);
}
如果在 fetch all 语句上方添加以下代码,它工作正常。
$this-> adminConn ->query("SET NAMES utf8");
$stmt = $this-> adminConn ->query($sql);
我需要为每个查询设置“SET NAMES utf8”吗?有没有共同点 实现它的方法?
【问题讨论】: