本文整理汇总了PHP中Key::setProject方法的典型用法代码示例。如果您正苦于以下问题:PHP Key::setProject方法的具体用法?PHP Key::setProject怎么用?PHP Key::setProject使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Key
的用法示例。
在下文中一共展示了Key::setProject方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: updateMessageIfNewest
/**
*/
public function updateMessageIfNewest(Project $project, $bundle, $key, $language, $catalog, $lastModification, $message)
{
if (!$bundle || !$language || !$key || !$lastModification || !$message) {
return $this->exception('Validation exceptions, missing parameters');
}
/** @var Key $keyRecord */
$keyRecord = $this->getKeyRepository()->findOneBy(array('project' => $project, 'bundle' => $bundle, 'key' => $key, 'catalog' => $catalog));
if (!$keyRecord) {
$keyRecord = new Key();
$keyRecord->setProject($project);
$keyRecord->setKey($key);
$keyRecord->setBundle($bundle);
$keyRecord->setCatalog($catalog);
$this->em->persist($keyRecord);
$this->em->flush();
}
/** @var Message $messageRecord */
$messageRecord = $this->getMessageRepository()->findOneBy(array('key' => $keyRecord, 'language' => $language));
if (!$messageRecord) {
$messageRecord = new Message();
$messageRecord->setKey($keyRecord);
$messageRecord->setLanguage($language);
} else {
if ($messageRecord->getUpdatedAt() >= $lastModification) {
return $this->resultOk(array('updated' => false, 'message' => $messageRecord->getMessage(), 'updatedAt' => $messageRecord->getUpdatedAt()->format('c')));
}
}
$messageRecord->setMessage($message);
$messageRecord->setUpdatedAt($lastModification);
$this->em->persist($messageRecord);
$this->em->flush($messageRecord);
return $this->resultOk(array('updated' => true, 'message' => $messageRecord->getMessage(), 'updatedAt' => $messageRecord->getUpdatedAt()->format('c')));
}