如何在doctrine zend框架中的flush之前插入行之后返回多个id
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在doctrine zend框架中的flush之前插入行之后返回多个id相关的知识,希望对你有一定的参考价值。
我插入多行,我想在doctrine zend框架3中同时检索所有行id。
foreach($rippleids as $rid)
{
$scheduleItem=[];
$scheduleId=[];
$rippleid = StaticFilter::execute($rid, 'StringTrim');
if (empty($rippleid)) {
continue;
}
//return;
$schedule= new Schedule();
$id= uniqid();
$schedule->setScheduleUId($id);
$ripple=$this->entityManager->getRepository(Ripple::class)->findOneBy(['id'=>$rippleid,'status'=>[1,2]]);
$schedule->setRipple($ripple);
$template=$this->entityManager->getRepository(Template::class)->findOneBy(['Id'=>$data[2]]);
$schedule->setTemplate($template);
$schedule->setStatus(1);
$schedule->setScheduleName($data[1]);
$schedule->setRecordingEnable($data[5]);
$schedule->setStartDateTime($startDateTime);
$schedule->setEndDateTime( $endDateTime);
$schedule->setScheduleStatus(0);
$schedule->setModifiedDate(date("Y-m-d H:i:s"));
$schedule->setSyncStatus(0);
$this->entityManager->persist($schedule);
$this->entityManager->persist($schedule);
$scheduleId=$schedule->getScheduleId();
此代码只返回一个Id,但我想检索所有插入id的行
答案
这是一个简单的问题,你需要在$ scheduleId上添加[]。
看起来像这样:$ scheduleId [] = $ schedule-> getScheduleId();
以上是关于如何在doctrine zend框架中的flush之前插入行之后返回多个id的主要内容,如果未能解决你的问题,请参考以下文章
Zend2 框架 - 给映射异常的 Doctrine ORM
在 Zend 框架 2 中使用 MappedSuperclass 的 Doctrine 2 多对多
DQL 语句在使用 Zend Framework 和 Doctrine 的应用程序中的位置
Zend+Doctrine2:如何使用 ArrayCollections() 正确刷新实体?