PHP字符串到JS数组



我有两个文件。第一个是我的首页,通过ajax函数获取信息,第二个是一个PHP文件,从数据库获取数据。

是一个字符串,返回的数据格式化为一个数组(例如:[' 0 ',' 0 ',' 0 ',' 0 ',' 0 ',' 0 ',' 0 ',' 0 ',' 0 ',' 0 '])。

我需要PHP数据被解释为一个JS数组,所以我可以很容易地使用它。

我试图返回一个PHP数组,但在JS中的结果是未定义的。

下面是我的代码: 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 . "']";

我的JS脚本是:

function RefreshKDAs() {
$.ajax({
url: 'getKills.php?lobby=<?= $lobby ?>',
success: function (data) {
console.log(data)
}
})
}

使用json_encode将PHP数组格式化为JSON:

https://www.php.net/manual/en/function.json-encode.php

我用

解决了这个问题$data = $g->getMatchKills($lobby)[0];
header("Content-Type: applicaton/json");
echo json_encode($data);

在我的数据检索PHP文件。

Thanks to Chris G.

最新更新