Я собираю данные из 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 ,
в середине этой строки является частью строки и не разделители?
Я не могу просто изменить $x = explode(",", $y);
использовать другой разделитель, потому что ,
, /
, ;
И т.д. все они используются в реальных строках, которые возвращаются, я просто использовал ,
в качестве примера.
Нет необходимости в преобразовании из массива в строку обратно в массив, чтобы добавить выбранные значения в массив $ output array:
$output[]=array({$i['number']},{$i['Type']},{$i['c']},{$i['d']},{$i['e']});
$i
- это уже массив, так зачем преобразовывать этот массив в строку, просто чтобы взорвать его обратно в массив? Если вы делаете это, чтобы скопировать только те ключи, которые вам нужны, есть лучшие способы сделать это ...