/** * @param CrossForeignKeys $crossFKs * @param ForeignKey $excludeFK * @return string */ protected function getCrossRefFKRemoveObjectNames(CrossForeignKeys $crossFKs, ForeignKey $excludeFK) { $names = []; $fks = $crossFKs->getCrossForeignKeys(); foreach ($crossFKs->getMiddleTable()->getForeignKeys() as $fk) { if ($fk !== $excludeFK && ($fk === $crossFKs->getIncomingForeignKey() || in_array($fk, $fks))) { if ($fk === $crossFKs->getIncomingForeignKey()) { $names[] = '$this'; } else { $names[] = '$' . lcfirst($this->getFKPhpNameAffix($fk, false)); } } } foreach ($crossFKs->getUnclassifiedPrimaryKeys() as $pk) { $names[] = '$' . lcfirst($pk->getPhpName()); } return implode(', ', $names); }
/** * @param CrossForeignKeys $crossFKs * @param ForeignKey $excludeFK * @return string */ protected function getCrossRefFKGetterName(CrossForeignKeys $crossFKs, ForeignKey $excludeFK) { $names = []; $fks = $crossFKs->getCrossForeignKeys(); foreach ($crossFKs->getMiddleTable()->getForeignKeys() as $fk) { if ($fk !== $excludeFK && ($fk === $crossFKs->getIncomingForeignKey() || in_array($fk, $fks))) { $names[] = $this->getFKPhpNameAffix($fk, false); } } foreach ($crossFKs->getUnclassifiedPrimaryKeys() as $pk) { $names[] = $pk->getPhpName(); } $name = implode($names); return $this->getPluralizer()->getPluralForm($name); }