使用Zend框架2将数据插入和更新到两个表(事务)中

时间:2013-08-30 12:20:46

标签: php zend-framework2

我需要将数据插入到一个表中,并使用tableGateway将数据引用到ZF2中的另一个表中。

例如,当我注册用户时,我必须将用户数据插入到一个表中,并且此用户将数据(多行)哄藏到另一个表中,其中包含插入的用户ID和更新数据的引用也应该有效。 / p>

我已经提到了这个网址: Want to insert into two tables using one form in ZF2

但这对我没有帮助。

我该怎么做?请帮我解决这个问题。

1 个答案:

答案 0 :(得分:3)

假设我们在'用户'模型。所以默认情况下tableGateway会在用户表和爱好表中插入数据,我已经将新的tableGateway设置为' $ userTable'。

$data = array(
        'id' => $user->id,
        'name'  => $user->name,
    );
$this->tableGateway->insert($data); //this will insert data in user table
$last_id=$this->tableGateway->lastInsertValue; //getting last inserted id
$adapter=$this->tableGateway->getAdapter(); 
$userTable = new TableGateway('hobbies', $adapter); //this will insert in hobbies table.
$data_arr = array(
        'link_id' => $last_id,
        'music_info'  =>'test',
        );
$artistTable->insert($data_arr);