本文整理匯總了PHP中Relation::updateList方法的典型用法代碼示例。如果您正苦於以下問題:PHP Relation::updateList方法的具體用法?PHP Relation::updateList怎麽用?PHP Relation::updateList使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Relation
的用法示例。
在下文中一共展示了Relation::updateList方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: saveTree
static function saveTree($meanings, $lexem)
{
$seenMeaningIds = array();
// Keep track of the previous meaning ID at each level. This allows us to populate the parentId field
$meaningStack = array();
$displayOrder = 1;
foreach ($meanings as $tuple) {
$m = $tuple->id ? self::get_by_id($tuple->id) : Model::factory('Meaning')->create();
$m->parentId = $tuple->level ? $meaningStack[$tuple->level - 1] : 0;
$m->displayOrder = $displayOrder++;
$m->breadcrumb = $tuple->breadcrumb;
$m->userId = session_getUserId();
$m->lexemId = $lexem->id;
$m->internalRep = $tuple->internalRep;
$m->htmlRep = AdminStringUtil::htmlize($m->internalRep, 0);
$m->internalEtymology = $tuple->internalEtymology;
$m->htmlEtymology = AdminStringUtil::htmlize($m->internalEtymology, 0);
$m->internalComment = $tuple->internalComment;
$m->htmlComment = AdminStringUtil::htmlize($m->internalComment, 0);
$m->save();
$meaningStack[$tuple->level] = $m->id;
$sourceIds = StringUtil::explode(',', $tuple->sourceIds);
MeaningSource::updateList(array('meaningId' => $m->id), 'sourceId', $sourceIds);
$meaningTagIds = StringUtil::explode(',', $tuple->meaningTagIds);
MeaningTagMap::updateList(array('meaningId' => $m->id), 'meaningTagId', $meaningTagIds);
foreach ($tuple->relationIds as $type => $lexemIdString) {
if ($type) {
$lexemIds = StringUtil::explode(',', $lexemIdString);
Relation::updateList(array('meaningId' => $m->id, 'type' => $type), 'lexemId', $lexemIds);
}
}
$seenMeaningIds[] = $m->id;
}
self::deleteNotInSet($seenMeaningIds, $lexem->id);
}