丢失的口音字符php

时间:2016-07-21 16:42:04

标签: php python json utf-8

下午好,我在python中有一个脚本从PHP运行它。该脚本对数据库进行查询并返回JSON对象:

[{"ESC_DEF": 0, "ESC_EJE": 2017, "ESC_FEC_PRE": null, "ESC_USU_BAJA": null, "ESC_NOM": "prueba fran 3", "ESC_SIT": "ABIERTO", "ESC_USU_ALTA": "hep68", "RONDA_ID": 1, "ESC_ORI": "Gestión Económica", "ESC_SIT2": "BORRADOR", "ESC_FEC_FRCG": null, "ESC_TPO": "PRESUPUESTO", "ESC_ORG": "1214", "ESC_FEC_ALTA": "19/07/2016 10:39:20", "ESC_FEC_FIR": null, "CRE": 0.00, "ID_PTOEGE": null, "ESC_FEC_BAJA": null, "ESC_COD_BAJA": null, "ID": 3637, "EST_ORG_NOM": null}]

我使用的命令是:

son_output = json.dumps((my_query), default=custom_json, ensure_ascii=False)`

在PHP中,我按如下方式运行并获取结果:

exec('python3 sqlserver.py'. " ".$parametro, $output, $ret_code);
$json = implode($output);
echo utf8_encode(stripslashes($json));

但内容显示如下:

  

" ESC_ORI":" Gestixc3xb3n Econxc3xb3mica"

重音字符无法正确显示。

很抱歉,如果我用英语表达不好。

1 个答案:

答案 0 :(得分:0)

“\ xc3 \ xb3”是“ó”。在使用stripslashes($ str)删除斜线时,你也失去了unicode转义,因此只能得到奇怪的字符而不是你正在寻找的小拉丁字符。不熟悉PHP,但尝试没有该功能运行。