如何将php数组传递给另一个js文件

时间:2014-03-04 11:01:44

标签: javascript php jquery arrays

我有index.php文件,我有一个像这样的php数组,

$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
echo json_encode($arr);

我希望jquery函数中的$ arr值位于另一个名为fetchvalue.js的文件中,

$(function  ()  {
    $('#barchart').sparkline(ARRAYFROMPHP, {
        type: 'bar', 
        barColor: '#3B5998',    
        height:'35px',
        weight:'96px'
    });
});

请帮我解决这个问题。我是php和JS.Thanks的新手。

5 个答案:

答案 0 :(得分:2)

当您使用jquery库时,可以使用$.getJSON()(或$ .ajax或其他方法)

var ARRAYFROMPHP = [];
$.getJSON('index.php', function(data){
 ARRAYFROMPHP = data;
});

答案 1 :(得分:1)

您必须将PHP数组传递给JS。

echo '<script>var arrayFromPhp = ' . json_encode($arr) . ';</script>';

之后,您可以在变量arrayFromPhp中访问JS文件中的数组。

不是JS没有关联数组,所以你的例子就是一个对象。

答案 2 :(得分:1)

调用你的url,它给你json数组,然后触发这样的迷你图..

$(function  ()  {
    $.getJSON('your_url_for_json',{},function(response) 
    {           
        $('#barchart').sparkline(response, {
                type: 'bar', 
               barColor: '#3B5998',    
               height:'35px',
               weight:'96px'
           });  

    }); 
});

答案 3 :(得分:0)

您可以直接在js:

中使用JSON字符串
console.log(ARRAYFROMPHP['a']);

答案 4 :(得分:0)

Php是服务器端语言,而JS是客户端。你不能直接与对方交谈。使用某种Web服务或Ajax进行交互。

$.ajax({
url: 'Call URL',
type: "GET",
dataType: "json",
success: function (data) {
    //Date will be your JSON returned from the PHP.
    alert(data)
}
});