本文整理汇总了PHP中RedBeanPHP\OODBBean::setMetaAll方法的典型用法代码示例。如果您正苦于以下问题:PHP OODBBean::setMetaAll方法的具体用法?PHP OODBBean::setMetaAll怎么用?PHP OODBBean::setMetaAll使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RedBeanPHP\OODBBean
的用法示例。
在下文中一共展示了OODBBean::setMetaAll方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: storeBeanWithLists
/**
* Stores a bean and its lists in one run.
*
* @param OODBBean $bean
*
* @return void
*/
protected function storeBeanWithLists(OODBBean $bean)
{
$sharedAdditions = $sharedTrashcan = $sharedresidue = $sharedItems = $ownAdditions = $ownTrashcan = $ownresidue = $embeddedBeans = array();
//Define groups
foreach ($bean as $property => $value) {
$value = $value instanceof SimpleModel ? $value->unbox() : $value;
if ($value instanceof OODBBean) {
$this->processEmbeddedBean($embeddedBeans, $bean, $property, $value);
$bean->setMeta("sys.typeof.{$property}", $value->getMeta('type'));
} elseif (is_array($value)) {
$originals = $bean->moveMeta('sys.shadow.' . $property, array());
if (strpos($property, 'own') === 0) {
list($ownAdditions, $ownTrashcan, $ownresidue) = $this->processGroups($originals, $value, $ownAdditions, $ownTrashcan, $ownresidue);
$listName = lcfirst(substr($property, 3));
if ($bean->moveMeta('sys.exclusive-' . $listName)) {
OODBBean::setMetaAll($ownTrashcan, 'sys.garbage', TRUE);
OODBBean::setMetaAll($ownAdditions, 'sys.buildcommand.fkdependson', $bean->getMeta('type'));
}
unset($bean->{$property});
} elseif (strpos($property, 'shared') === 0) {
list($sharedAdditions, $sharedTrashcan, $sharedresidue) = $this->processGroups($originals, $value, $sharedAdditions, $sharedTrashcan, $sharedresidue);
unset($bean->{$property});
}
}
}
$this->storeBean($bean);
$this->processTrashcan($bean, $ownTrashcan);
$this->processAdditions($bean, $ownAdditions);
$this->processResidue($ownresidue);
$this->processSharedTrashcan($bean, $sharedTrashcan);
$this->processSharedAdditions($bean, $sharedAdditions);
$this->processSharedResidue($bean, $sharedresidue);
}
示例2: processLists
/**
* Stores a bean and its lists in one run.
*
* @param OODBBean $bean
*
* @return void
*/
private function processLists(OODBBean $bean)
{
$sharedAdditions = $sharedTrashcan = $sharedresidue = $sharedItems = $ownAdditions = $ownTrashcan = $ownresidue = $embeddedBeans = array();
//Define groups
foreach ($bean as $property => $value) {
$value = $value instanceof SimpleModel ? $value->unbox() : $value;
if ($value instanceof OODBBean) {
$this->processEmbeddedBean($embeddedBeans, $bean, $property, $value);
} elseif (is_array($value)) {
$originals = $bean->getMeta('sys.shadow.' . $property, array());
$bean->setMeta('sys.shadow.' . $property, NULL);
//clear shadow
if (strpos($property, 'own') === 0) {
list($ownAdditions, $ownTrashcan, $ownresidue) = $this->processGroups($originals, $value, $ownAdditions, $ownTrashcan, $ownresidue);
$listName = lcfirst(substr($property, 3));
if ($bean->getMeta('sys.exclusive-' . $listName)) {
OODBBean::setMetaAll($ownTrashcan, 'sys.garbage', TRUE);
}
unset($bean->{$property});
} elseif (strpos($property, 'shared') === 0) {
list($sharedAdditions, $sharedTrashcan, $sharedresidue) = $this->processGroups($originals, $value, $sharedAdditions, $sharedTrashcan, $sharedresidue);
unset($bean->{$property});
}
}
}
$this->storeBean($bean);
if (!$this->isFrozen) {
$this->addForeignKeysForParentBeans($bean, $embeddedBeans);
}
$this->processTrashcan($bean, $ownTrashcan);
$this->processAdditions($bean, $ownAdditions);
$this->processResidue($ownresidue);
$this->processSharedTrashcan($bean, $sharedTrashcan);
$this->processSharedAdditions($bean, $sharedAdditions);
$this->processSharedResidue($bean, $sharedresidue);
}