Php strip_标记截断JSON

Php strip_标记截断JSON,php,json,string,strip-tags,truncated,Php,Json,String,Strip Tags,Truncated,我有一个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\/" }, .

我有一个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\/"
 },
 ....
 ....
这条线以下的一切都消失了。这是一个巨大的JSON。但是它在这里被截断了。 有什么办法吗?我需要去掉所有的HTML标签

更新: 正在添加更多详细信息


我得到的这个JSON字符串来自对查询结果数组的编码。因此,我从MySQL查询中获取数组,并使用
json\u encode
对其进行编码,并尝试
strip\u标记

在解码json对象后,去掉标记。您可能会以惰性方式(即在需要时)执行此操作,而不是遍历所有字段上的每一项并去掉标记。

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

$array = json_decode($json, true);
array_walk_recursive($array, function (&$val) { $val = strip_tags($val); });
$json = json_encode($json);
很简单。。。对它进行解码、遍历和编码



很简单。。。对其进行解码、遍历并编码。

问题是名称有
。看来标签永远不会结束。是的,我看到了这个问题。但是它不应该在那一行之后剥离整个字符串?好吧,那么如果您控制JSON的创建,为什么不在序列化之前剥离标记呢?为什么不呢?允许标记跨越多行
strip_tags
不知道这是JSON,该函数用于HTML数据。@Barmar。我同意这一点。这里的字符串不同。如果没有结束标记,那么我想它不应该将其视为HTML标记或将其保留为未压缩状态。问题是名称有
。看来标签永远不会结束。是的,我看到了这个问题。但是它不应该在那一行之后剥离整个字符串?好吧,那么如果您控制JSON的创建,为什么不在序列化之前剥离标记呢?为什么不呢?允许标记跨越多行
strip_tags
不知道这是JSON,该函数用于HTML数据。@Barmar。我同意这一点。这里的字符串不同。如果没有结束标记,那么我想它不应该将其视为HTML标记或将其保留为未剥离状态。@KevinRave然后在编码之前执行我的array\u walk\u递归调用,一切正常-而不是在编码之后使用strip\u标记。这是如何工作的?您是否分别对每个JSON对象的每个元素进行编码?很抱歉,试图理解它的功能。@KevinRave array\u walk\u recursive是一种使用回调的深度foreach。它通过引用更改整个数组的每个非数组项。另请参见它是否适用于格式
数组([123]=>Array([123]=>asdfasd))
?@KevinRave它应该适用于每个数组。(也适用于多维数组)@KevinRave然后在编码之前执行我的array_walk_递归调用,一切正常-而不是在编码之后使用strip_标记。这是如何工作的?您是否分别对每个JSON对象的每个元素进行编码?很抱歉,试图理解它的功能。@KevinRave array\u walk\u recursive是一种使用回调的深度foreach。它通过引用更改整个数组的每个非数组项。另请参见它是否适用于格式
数组([123]=>Array([123]=>asdfasd))
?@KevinRave它应该适用于每个数组。(也适用于多维数组)
$array = json_decode($json, true);
array_walk_recursive($array, function (&$val) { $val = strip_tags($val); });
$json = json_encode($json);