如何将PHP 2d数组传递给JS脚本?

时间:2013-10-22 16:47:29

标签: javascript php arrays

假设我有一张桌子

[table fruits]
--------+------------+
ID [PK] | fruit      |
--------+------------+
1       | Orange     |
2       | Banana     |
3       | Coconut    |

我需要在JS数组中保存ID和名称列表,例如:

var fkOptionList = [[1]['Orange'],[2]['Banana'],[3]['Coconut']]
在PHP中

我通过以下方式实现了这一目标:

        $fkOptionTableR = $fkOptionTableQ->result_array();

        $fkOption2dArray[] = array();
        $i = 0;
        $j = 0;

        foreach ($fkOptionTableR as $array) {
          foreach ($array as $row) {
          $fkOption2dArray[$i][$j] = $row;
            $j++;
          }
          $i++;
          $j = 0;
        }

导致(根据var_dump):

array(3) { 
[0]=> array(2) { [0]=> string(1) "1" [1]=> string(6) "Orange" } 
[1]=> array(2) { [0]=> string(1) "2" [1]=> string(6) "Banana" } 
[2]=> array(2) { [0]=> string(1) "3" [1]=> string(7) "Coconut" } 
} 

我需要在我的JS脚本中使用该数组,但问题是它在其他文件中(上面的PHP脚本由CI的控制器加载一次)。有没有办法通过它?

1 个答案:

答案 0 :(得分:5)

在PHP中

$yourArray = json_encode($fkOptionTableR);

在JAVASCRIPT

var twoDarray = <?php echo $yourArray ?>