Как мне взять строку, возвращенную из gen_results_table в PHP SDK, и преобразовать ее в массив Javascript?
Я использую Quickbase API через PHP SDK для вызова функции gen_results_table () и получения массива javascript. Многомерный массив возвращается как строка в PHP. Кто-нибудь знает лучший способ доступа к массиву? В настоящее время у меня есть это как начало:
<?php
$rawdata = $qbconnect->gen_results_table($queries, '', '', '11.12.13', '', 'num-3' ) ;
?>
var_dump ($ rawdata) дает:
string (1377) "var qdb_numcols = 3; var qdb_numrows = 10; var qdb_heading = new Array (); qdb_heading [0] =" Year "; qdb_heading [1] =" Month "; qdb_heading [2] =" Total "; var qdb_data = new Array(); qdb_data[0] = new Array(); qdb_data[0][0] = "2013"; qdb_data[0][1] = "январь"; qdb_data[0][2] = "$9,16"; qdb_data[1] = новый массив (); qdb_data[1][0] = "2013"; qdb_data[1][1] = "январь"; qdb_data [1] [2] = "64,80 $"; qdb_data[2] = new Array(); qdb_data[2][0] = "2013"; qdb_data[2][1] = "январь"; qdb_data[2][2] = "$164,88"; "
<script>
var js_var = "<?php echo rawurlencode($rawdata); ?>";
document.write(unescape(js_var)) ;
</script>
document.write (unescape (js_var)) дает:
var qdb_numcols = 3; var qdb_numrows = 1; var qdb_heading = new Array (); qdb_heading [0] = "Год"; qdb_heading [1] = "Месяц"; qdb_heading [2] = "Всего"; var qdb_data = new Array(); qdb_data[0] = new Array(); qdb_data[0][0] = "2013"; qdb_data[0][1] = "январь"; qdb_data[0][2] = "$9,16";
Теперь мне просто нужен способ получить доступ к тому, что хранится в js_var.
1 ответ
Все, что вам нужно сделать, это сбросить необработанные данные в вашем HTML-коде между script
теги:
<script>
<?php echo rawurlencode($rawdata); ?>
console.log(qdb_numcols); // <-- the data is now available
</script>