2012-03-18 56 views
-3

可能重复:
Generating a JavaScript array from a PHP array转换PHP数组JavaScript数组

我只是想知道如何使用PHP的帮助和帮助创建JavaScript数组肯定赞赏

我对此表格有PHP结果

Array 
(
    [0] => stdClass Object 
     (
      [id] => 11 
      [name] => MLB 
      [totalcount] => 4 
     ) 

    [1] => stdClass Object 
     (
      [id] => 35 
      [name] => American Idol 
      [totalcount] => 2 
     ) 

) 

,我想这个数组转换为JavaScript数组这样

<script type="text/javascript"> 
    var myData = new Array(['MLB', 4], ['American Idol', 2]); 
</script> 

回答

5

首先,您的输入数组转换为所需的格式:

$new_data = array(); 
foreach($original_data as $ori_row) 
    $new_data[] = array($ori_row->name, $ori_row->totalcount); 

现在你可以享受json_encode好处:http://php.net/manual/en/function.json-encode.php

$json = json_encode($new_data); 
echo <<<END 
    <script type="text/javascript"> 
    var myData = $json; 
    </script> 
END; 

顺便说一句,你不必写new Array(...),只需写[...],就像你的内部数组。

我想我回答了你的问题,请参见http://codepad.org/5guUWmHD

+0

仔细阅读的问题 - 在OP想要一个数组 - ** **不是一个(JSON)对象。 – Lix 2012-03-18 12:20:17

+2

仔细阅读文档 - json_encode也可以创建数组。 – enobrev 2012-03-18 12:24:02

+0

真的,固定的,我希望:) – biziclop 2012-03-18 12:24:28