将多维PHP数组转换为javascript数组
我正在尝试使用JSON编码器将PHP多维数组转换为javascript数组。当我执行var_转储时,我的php数组如下所示:将多维PHP数组转换为javascript数组,php,javascript,Php,Javascript,我正在尝试使用JSON编码器将PHP多维数组转换为javascript数组。当我执行var_转储时,我的php数组如下所示: array (size=2) 'Key' => string 'a' (length=1) 'Value' => string 'asite.com' (length=9) 这是我当前在视图中尝试将其转换为JavaScript数组时使用的代码: var tempArray = $.parseJSON(<?php echo json_encode
array (size=2)
'Key' => string 'a' (length=1)
'Value' => string 'asite.com' (length=9)
这是我当前在视图中尝试将其转换为JavaScript数组时使用的代码:
var tempArray = $.parseJSON(<?php echo json_encode($php_array); ?>);
这是javascript多维数组的正确结构吗?我这样问是因为它在上面的一行中不断给我这个错误:
SyntaxError:意外标记o
您不必调用parseJSON,因为json_decode的输出是一个javascript文本。只需将其分配给一个变量
var tempArray = <?php echo json_encode($php_array); ?>;
只需在js函数中添加单引号,如
var tempArray=$.parseJSON(“”)代码>不要使用parseJSON,这是一个字符串。
只要做:
这对我有用
<script type='text/javascript'>
<?php
$php_array = array(
array("casa1", "abc", "123"),
array("casa2", "def", "456"),
array("casa3", "ghi", "789" )
);
$js_array = json_encode($php_array);
echo "var casas = ". $js_array . ";\n";
?>
alert(casas[0][1]);
</script>
警报(casas[0][1]);
我不知道这只是字符串,谢谢你的回答。
alert(tempArray[0].Key);
<?php
$php_array = array ('Key'=>'a', 'Value'=>'asite.com');
?>
<html>
<head>
<script type="text/javascript">
var tempArray = <?php echo json_encode($php_array); ?>;
console.log(tempArray);
</script>
</head>
<body>
</body>
</html>
Object { Key="a", Value="asite.com"}
<script type='text/javascript'>
<?php
$php_array = array(
array("casa1", "abc", "123"),
array("casa2", "def", "456"),
array("casa3", "ghi", "789" )
);
$js_array = json_encode($php_array);
echo "var casas = ". $js_array . ";\n";
?>
alert(casas[0][1]);
</script>