1

我有一个这样的 JSON 响应:

 {
  "id":"2461",
  "name":"GEORGIA INSTITUTE OF <leo_highlight style=border-bottom: 2px solid rgb(255, 255, 150); background-c",
  "logo":"",
  "address":null,
  "city":null,
  "state":null,
  "campus_uri":"{{PATH}}2461\/"
 },
 ....
 ....

当我这样做strip_tgs时,整个 JSON 字符串在name上面的标签处被截断。JSON 字符串如下所示。

{"id":"2461","name":"GEORGIA INSTITUTE OF 

这条线以下的一切都消失了。这是一个巨大的 JSON。但它在这里被截断。关于做什么的任何想法?我需要去掉所有的 HTML 标签。

更新: 添加更多细节......

我得到的这个 JSON 字符串来自对查询结果数组的编码。因此,我从 MySQL 查询中获取数组,并对其进行编码json_encode并尝试对其进行编码strip_tags

4

2 回答 2

1
$array = json_decode($json, true);
array_walk_recursive($array, function (&$val) { $val = strip_tags($val); });
$json = json_encode($json);

很简单......解码它,遍历并编码它。

于 2013-04-16T20:14:53.530 回答
0

解码 JSON 对象后去除标签。您可能会以一种懒惰的方式(即在需要时)执行此操作,而不是遍历每个项目,并在所有字段上剥离标签。

于 2013-04-16T20:14:20.943 回答