Форматирование массива в виде JSON для ввода в Google Charts API?

Заметил, что целочисленные значения должны быть целыми числами в jsonОднако я использую строки.

Необработанный массив:

   '[{"sctr":"Asset Managers","amount":"1586500"},{"sctr":"Auto
Parts","amount":"1618000"},{"sctr":"Business Support
Services","amount":"1012020"},{"sctr":"Coal","amount":"1043550"},
{"sctr":"Consumer Finance","amount":"2285000"},...

Затем я использую следующий код, чтобы удалить ключи sctr а также amount:

        $sector_final = array();
array_push($sector_final, array("Sector", "Amount"));
foreach( $sector_data as $row){
array_push($sector_final, array_values($row));
}
var_dump(json_encode($sector_final));'

Предоставление:

'[["Sector","Amount"],["Asset Managers","1586500"],["Auto
Parts","1618000"],["Business Support Services","1012020"],
["Coal","1043550"],["Consumer Finance","2285000"],

Однако суммы не должны быть в кавычках для работы Google Chart Api.

Как я могу это сделать, и есть ли более эффективный способ удаления ключей для JSON?

1

Решение

Попробуйте привести этот конкретный элемент в int перед кормлением / кормлением:

$sector_final = array();
array_push($sector_final, array("Sector", "Amount"));
foreach( $sector_data as $row){
$row['amount'] = (int) $row['amount']; // cast it
array_push($sector_final, array_values($row));
}
3

Другие решения

$sector_final = array();

//array_push($sector_final, array("Sector", "Amount"));
foreach( $sector_data as $row){

$final = array("Sector" => "' . $row['sector'] . '",
"Amount" => $row['amount']);

array_push($sector_final, $final);
}
var_dump(json_encode($sector_final));
1

По вопросам рекламы [email protected]