【问题标题】:Json - Invalid UTF-8 sequenceJson - 无效的 UTF-8 序列
【发布时间】:2013-07-08 09:26:00
【问题描述】:

我收到以下错误消息,但我不知道如何修复它: “PHP 警告:json_encode() [function.json-encode]: Invalid UTF-8 sequence”在这个 php 脚本中:

<?
$sth = mysql_query("SELECT *
  FROM produse_comenzi
  JOIN comenzi 
    ON comenzi.id_comanda = produse_comenzi.id_comanda
  JOIN (SELECT DISTINCT numar_factura, id_comanda FROM facturi) AS facturi
    ON facturi.id_comanda = comenzi.id_comanda
    AND comenzi.data >= '". $_GET['i'] ."' AND comenzi.data <= '". $_GET['d'] ."'
    JOIN produse ON produse.id_produs = produse_comenzi.id_produs");
$rows = array();
while($r = mysql_fetch_assoc($sth)) {
    $rows[] = $r;
}
print json_encode($rows);
?>

【问题讨论】:

  • 你的表格内容是什么?它似乎包含一些多字节字符,看看里面

标签: php json encode


【解决方案1】:
$rows[] = mb_check_encoding($r, 'UTF-8') ? $r : utf8_encode($r)

在打印语句之前试试这个。

【讨论】:

  • 你的意思是 $rows[] = mb_check_encoding($r, 'UTF-8') ? $r : utf8_encode($r) 在 while 语句中吗? :)
  • 我收到此错误:PHP 警告:mb_check_encoding() 期望参数 1 为字符串
  • 因为您需要分别处理从数据库中获取的所有数据
猜你喜欢
  • 1970-01-01
  • 2015-02-06
  • 2015-07-04
  • 2012-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-28
  • 2016-07-05
相关资源
最近更新 更多