Javascript 使用json_encode()进行转换 var js_数组=“”; 对于(var i=0;i
我有两个元素的PHP数组,当我使用Javascript 使用json_encode()进行转换 var js_数组=“”; 对于(var i=0;i,javascript,php,arrays,json,Javascript,Php,Arrays,Json,我有两个元素的PHP数组,当我使用json\u encode()javascript将这个数组转换为javascript数组时,将我的PHP数组划分为一组字符,因此在javascript数组中我有很多元素。如何将包含两个元素的PHP数组转换为包含相同两个元素的javascript数组 php函数将为您提供一个有效的对象,这实际上就是它的意思,JavasscriptObjectNotation 因此,通过按原样使用它,您将在JavaScript代码中创建一个对象。通过将其括在撇号之间,可以使其成为
json\u encode()
javascript将这个数组转换为javascript数组时,将我的PHP数组划分为一组字符,因此在javascript数组中我有很多元素。如何将包含两个元素的PHP数组转换为包含相同两个元素的javascript数组 php函数将为您提供一个有效的对象,这实际上就是它的意思,JavasscriptObjectNotation
因此,通过按原样使用它,您将在JavaScript代码中创建一个对象。通过将其括在撇号之间,可以使其成为字符串(谁的值可以解析为JSON)
所以最简单的改变就是去掉撇号。所以这一行:
<?php
$array = array("first elem", "second elem");
?>
<html>
<head>
</head>
<body>
<script>
var js_array = '<?php echo json_encode($array); ?>';
for (var i = 0; i < js_array.length; i++)
{
document.write(js_array[i]);
document.write("<br>");
}
</script>
</body>
var js_数组=“”;
应该成为
var js_array = '<?php echo json_encode($array); ?>';
var js_数组=;
用以下代码替换您的代码。
var js_array = <?php echo json_encode($array); ?>;
var js_数组=;
对于(var i=0;i”);
}
我希望它对您有所帮助….问题是您将json_编码用冒号括起来,因此要将其转换为字符串。它生成的javascript如下所示:
var js_array = <?php echo json_encode($array); ?>;
<?php
$array = array("first elem", "second elem");
?>
<html>
<head>
</head>
<body>
<script>
var js_array = <?php echo json_encode($array); ?>;
for (var i = 0; i < js_array.length; i++)
{
document.write(js_array[i]);
document.write("<br>");
}
</script>
</body>
这里的js_array
是一个字符串,但您需要一个数组。您需要做的是直接生成json,因为它将生成一个数组:
var js_array = '["first elem","second elem"]';
var js_数组=;
从此行中删除单引号var js_array=''代码>可能重复的@AnthonyGorshenin不客气,我很高兴它能帮上忙