本文整理匯總了PHP中Doctrine_Record::oid方法的典型用法代碼示例。如果您正苦於以下問題:PHP Doctrine_Record::oid方法的具體用法?PHP Doctrine_Record::oid怎麽用?PHP Doctrine_Record::oid使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Doctrine_Record
的用法示例。
在下文中一共展示了Doctrine_Record::oid方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: add
/**
* Adds a record to collection
*
* @param Doctrine_Record $record record to be added
* @param string $key optional key for the record
* @return boolean
*/
public function add($record, $key = null)
{
if (isset($this->referenceField)) {
$value = $this->reference->get($this->relation->getLocalFieldName());
if ($value !== null) {
$record->set($this->referenceField, $value, false);
} else {
$record->set($this->referenceField, $this->reference, false);
}
$relations = $this->relation['table']->getRelations();
foreach ($relations as $relation) {
if ($this->relation['class'] == $relation['localTable']->getOption('name') && $relation->getLocal() == $this->relation->getForeignFieldName()) {
$record->{$relation}['alias'] = $this->reference;
break;
}
}
}
$oid = $record->oid();
if (isset($this->oids[$oid])) {
return false;
}
if (isset($key)) {
if (isset($this->data[$key])) {
return false;
}
$this->data[$key] = $record;
$this->oids[$oid] = true;
return true;
}
if (isset($this->keyColumn)) {
$value = $record->get($this->keyColumn);
if ($value === null) {
throw new Doctrine_Collection_Exception("Couldn't create collection index. Record field '" . $this->keyColumn . "' was null.");
}
$this->data[$value] = $record;
} else {
$this->data[] = $record;
}
$this->oids[$oid] = true;
return true;
}