我需要将多维 PHP 数组转换为 Javascript。
我创建了一个数组,如图所示...
foreach ($results as $row)
{
$template[] = array('Id'=>$row["Id"],'Address'=>$row["Addr"]),'name'=>$row["name"]);
}
我尝试过使用 PHP implode 函数来构建 JS 数组..
var theJSTemplateArray = [<?php echo '"'.implode('","', $template).'"' ?>];
网页无法运行显然是一个错误..但我找不到它。 是因为 PHP implode 不适用于多维数组吗? 预先感谢
你是对的,
implode()
函数是为一维数组设计的,因此不能像你希望的那样对多维数组起作用。
要将多维 PHP 数组转换为 JS 数组,您可以使用
json_encode()
。这会将 PHP 数组转换为 JSON 字符串,然后 JS 可以将其解释为数组或对象:
var theJSTemplateArray = <?php echo json_encode($template); ?>;
如何获取数组值:
for (var i = 0; i < theJSTemplateArray.length; i++) {
console.log("Id: " + theJSTemplateArray[i].Id);
console.log("Address: " + theJSTemplateArray[i].Address);
console.log("Name: " + theJSTemplateArray[i].name);
}