0

尝试通过 PHP 将数据从 GraphDB (Neo4J) 传输到 JavaScript,因此 vis.js 可用于显示这些数据。

我到目前为止:

  • 从 Neo4J 读取数据并将它们存储在 PHP 数组中:

Array
(
    [0] => Array
        (
            [0] => 550c2646c4985
            [1] => LOCAL_USER
        )

    [1] => Array
        (
            [0] => 550c267840b7a
            [1] => CSM
        )

    [2] => Array
        (
            [0] => 550c4e6e563b9
            [1] => TM
        )

    [3] => Array
        (
            [0] => 550c4e76b0701
            [1] => SM
        )

)

  • 浏览网络,发现 json_encode 作为将数据从 PHP 传输到 JavaScript 的正确函数:

    var groups= <?php echo json_encode( $group_nodes ) ?>;

  • vis.js 期望数组中的数据,如

  var nodes = [{
              id: 1,
              label: 'Node 1',
          }, {
              id: 2,
              label: 'Node 2'
          }, {
              id: 3,
              label: 'Node 3'
          }, {
              id: 4,
              label: 'Node 4'
          }, {
              id: 5,
              label: 'Node 5'
          }];

我卡住了,因为我找不到将数组转换为 vis.js 可读格式的方法。当我检查 javascript 数组时,我得到了所有元素,但只有逗号分隔。似乎 vis.js 也期望它们在语法 [{...,...},{...,...}] 中。

知道如何生成这样的格式吗?

4

1 回答 1

1
$newArray = array();

for ($arrData as $value) {
   $newArray[] = array('id' => $value[0], 'label' => $value[1]);
}

$js = json_encode($newArray)
于 2015-03-22T14:46:12.133 回答