Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将数组值从PHP传递到JavaScript_Javascript_Php - Fatal编程技术网

如何将数组值从PHP传递到JavaScript

如何将数组值从PHP传递到JavaScript,javascript,php,Javascript,Php,我这里有一个PHP数组: $newArray = array(4,27,34,52,54,59,61,68,78,82,85,87,91,93,100); 我希望将这个PHP数组传递给我的JavaScript代码,使我的JavaScript中的“data”变量与我在PHP脚本中声明的数组相同。以下是我的JavaScript代码: <script type="text/javascript"> $(function() { data: [4,27,34,52,54,59,

我这里有一个PHP数组:

$newArray = array(4,27,34,52,54,59,61,68,78,82,85,87,91,93,100);
我希望将这个PHP数组传递给我的JavaScript代码,使我的JavaScript中的“data”变量与我在PHP脚本中声明的数组相同。以下是我的JavaScript代码:

<script type="text/javascript">
$(function() {

    data:  [4,27,34,52,54,59,61,68,78,82,85,87,91,93,100];

});
</script>

$(函数(){
数据:[4,27,34,52,54,59,61,68,78,82,85,87,91,93100];
});
我的想法是直接嵌入$newArray,如下所示:

data: <?php $newArray ?>
$array = array("item_1" => 1, "item_2"=> 2);
$json = json_encode($array);
数据:
但它不起作用。我该怎么做?谢谢你的帮助

正在做

data: <?php $newArray ?>
(试一试,你会得到一个不同的错误;))但即使这样,它也不会是你想要的格式,所以你需要在它上面使用
json\u encode
encode,以javascript可以读取的方式格式化,就像这样

data: <?php echo json_encode($newArray) ?>;
数据:;

使用PHP内置的json_encode()函数,如下所示:

data: <?php $newArray ?>
$array = array("item_1" => 1, "item_2"=> 2);
$json = json_encode($array);
然后将该数组传递给JavaScript(通过AJAX或其他方法),并使用jQuery函数$.parseJSON()进行解码,如下所示:

$(function(){
    var json = $.parseJSON(passedFromPHP);
});
这将为您提供一个JSON对象,您可以使用JavaScript进行操作。

您也可以这样做:

data: [<?php echo implode(',', $newArray); ?>];
数据:[];

数据:
@mlefervre将此作为答案发布。您需要首先展平阵列(就像您使用json编码一样),您不能简单地回显/打印阵列