コード例 #1
0
ファイル: AbstractRow.php プロジェクト: alab1001101/zf2
 /**
  * Prepares a table reference for lookup.
  *
  * Ensures all reference keys are set and properly formatted.
  *
  * @param \Zend\DB\Table\AbstractTable $dependentTable
  * @param \Zend\DB\Table\AbstractTable $parentTable
  * @param string                 $ruleKey
  * @return array
  */
 protected function _prepareReference(Table\AbstractTable $dependentTable, Table\AbstractTable $parentTable, $ruleKey)
 {
     $parentTableName = get_class($parentTable) === 'Zend_Db_Table' ? $parentTable->getDefinitionConfigName() : get_class($parentTable);
     $map = $dependentTable->getReference($parentTableName, $ruleKey);
     if (!isset($map[Table\AbstractTable::REF_COLUMNS])) {
         $parentInfo = $parentTable->info();
         $map[Table\AbstractTable::REF_COLUMNS] = array_values((array) $parentInfo['primary']);
     }
     $map[Table\AbstractTable::COLUMNS] = (array) $map[Table\AbstractTable::COLUMNS];
     $map[Table\AbstractTable::REF_COLUMNS] = (array) $map[Table\AbstractTable::REF_COLUMNS];
     return $map;
 }