首页 > 解决方案 > 在 Javascript 中使用 PHP 二维数组

问题描述

在 php 我有这个数组

$MAtoJS[] = array('Max','Mustermann','N','A80');
$MAtoJS[] = array('Michaela','May','N','A78');
$MAtoJS[] = array('Hans','Gerstelhuber','N','M12');
$MAtoJS[] = array('Alfred E.','Neumann','N','T25');
$MAtoJS[] = array('James','Bond','N','M72');

还是在php部分我为js准备数组

$MAarrayForJS = json_encode(json_encode($MAForJS));

在 javascript 部分,我创建了一个 js-array

var MAarray = new Array(<?php echo $MAarrayForJS; ?>); alert(MAarray)

MAarray 的内容是

[["Max","Mustermann","N","A80"],["Michaela","May","N","A78"],["Hans","Gerstelhuber","N","M12"],["Alfred E.","Neumann","N","T25"],["James","Bond","N","M72"]]

使用

console.log(MAarray[0]);

例如,我试图通过此代码获取 Hans 的名字

var FirstName = MAarray[0][2][1];

这会导致 console.log 中出现“未定义”。

如何访问特定数组中的特定值,在这种情况下将 var FirstName 设置为第三个“子数组”中的值“Hans”?

标签: javascriptphparrays

解决方案


你在找这个...?

$MAtoJS = [];

$MAtoJS[] = array('Max','Mustermann','N','A80');
$MAtoJS[] = array('Michaela','May','N','A78');
$MAtoJS[] = array('Hans','Gerstelhuber','N','M12');
$MAtoJS[] = array('Alfred E.','Neumann','N','T25');
$MAtoJS[] = array('James','Bond','N','M72');

$MAarrayForJS = json_encode($MAtoJS);

?>

<script>
    var MAarray = <?php echo $MAarrayForJS; ?>;
    console.log(MAarray[0][0]); // Max
</script>

推荐阅读