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


How to pass PHP 2d array to JS script?

假设我有一个表

[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 的控制器加载一次)。有没有办法通过它?

在 PHP 中

$yourArray = json_encode($fkOptionTableR);

在 JAVASCRIPT 中

var twoDarray = <?php echo $yourArray ?>