tengo dos archivos La primera es mi página principal que obtiene información a través de una función ajax y la segunda es un archivo PHP que obtiene los datos de una base de datos.
Los datos devueltos son una cadena, formateada como una matriz (ejemplo: ['0', '0', '0', '0', '0', '0', '0', '0', '0' ,'0'] ).
Necesito que los datos de PHP se interpreten como una matriz JS para poder usarlos fácilmente.
Traté de devolver una matriz de PHP, pero el resultado en JS no está definido.
Aquí está mi código:
Recuperador de datos PHP:
$g = new Game(); $top1 = ($g->getMatchKills($lobby)[0]['p1c1kills']); $top2 = ($g->getMatchKills($lobby)[0]['p2c1kills']); $jgl1 = ($g->getMatchKills($lobby)[0]['p1c2kills']); $jgl2 = ($g->getMatchKills($lobby)[0]['p2c2kills']); $mid1 = ($g->getMatchKills($lobby)[0]['p1c3kills']); $mid2 = ($g->getMatchKills($lobby)[0]['p2c3kills']); $adc1 = ($g->getMatchKills($lobby)[0]['p1c4kills']); $adc2 = ($g->getMatchKills($lobby)[0]['p2c4kills']); $sup1 = ($g->getMatchKills($lobby)[0]['p1c5kills']); $sup2 = ($g->getMatchKills($lobby)[0]['p2c5kills']); echo "['" . $top1 ."','" .$top2. "','" . $jgl1 . "','" . $jgl2 . "','" . $mid1 . "','" . $mid2 . "','" . $adc1 . "','" . $adc2 . "','" . $sup1 . "','" . $sup2 . "']";Y mi script JS es:
function RefreshKDAs() { $.ajax({ url: 'getKills.php?lobby=<?= $lobby ?>', success: function (data) { console.log(data) } }) }Use json_encode para formatear una matriz de PHP en JSON:
Resolví esto usando
$data = $g->getMatchKills($lobby)[0];
header("Content-Type: applicaton/json");
echo json_encode($data);
en mi archivo PHP de recuperación de datos.
Gracias a Chris G.