字符串中的PHP数组分隔符正在转义


escaping PHP array delimiter out of string

我从API中获取数据,每隔一段时间,一个值就会返回到我捕获的其中一个字段中,该字段中有一个逗号,这导致每次发生这种情况时,我的结果都会偏移1。

从API得到结果后,我将其放入$answerSearch,然后放入json_decode

$json = json_decode($answerSearch, true);
foreach ($json['Result']['a']['b'] as $i) {
  $y = "{$i['number']},{$i['Type']},{$i['c']},{$i['d']},{$i['e']}"; 
  $x = explode("," , $y);
  array_push($output, $x);
}

其中一个{$i['number']}值可能是"1234,123",因为我使用逗号作为分隔符,这会导致整个数组出错。

如何告诉PHP这个字符串中间的,是字符串的一部分,而不是一个delimeter?

更新

我不能只是将$x = explode("," , $y);更改为使用另一个分隔符,因为,/;等都在返回的实际字符串中使用,我只是以,为例。

没有从数组到字符串再到数组的转换,要将所选值添加到$output数组,请使用:

$output[]=array({$i['number']},{$i['Type']},{$i['c']},{$i['d']},{$i['e']});