Arangodb,在php中运行插入查询后,只需获取ID?

问题描述

$query = new arangoStatement($db,[
        'query' => 'INSERT @tweet IN tweets RETURN NEW','bindVars' =>[
            'tweet' => $tweet
        ]
    ]);
    $res = $query->execute();
    // get the id back somehow?

没有为这个简单的任务找到任何在线解决方案,而且由于运行了$ query-> getAll,我看不到有办法恢复它

解决方法

您可以直接从查询中返回_id,执行查询,获取所有游标数据并弹出数组中唯一的值:

$query = new ArangoStatement($db,[
  'query' => 'INSERT @tweet IN tweets RETURN NEW._id','bindVars' =>[
    'tweet' => $tweet
  ]
]);
$cursor = $query->execute();
$id = array_pop($cursor->getAll())
// print_r($id);