/** * @param ForeignKeyConstraint $key1 * @param ForeignKeyConstraint $key2 * @return bool */ public function diffForeignKey(ForeignKeyConstraint $key1, ForeignKeyConstraint $key2) { if (array_map('strtolower', $key1->getLocalColumns()) != array_map('strtolower', $key2->getLocalColumns())) { return true; } if (array_map('strtolower', $key1->getForeignColumns()) != array_map('strtolower', $key2->getForeignColumns())) { return true; } if ($key1->onUpdate() != $key2->onUpdate()) { return true; } if ($key1->onDelete() != $key2->onDelete()) { return true; } return false; }
/** * @param ForeignKeyConstraint $key1 * @param ForeignKeyConstraint $key2 * @return bool */ public function diffForeignKey(ForeignKeyConstraint $key1, ForeignKeyConstraint $key2) { if (array_map('strtolower', $key1->getLocalColumns()) != array_map('strtolower', $key2->getLocalColumns())) { return true; } if (array_map('strtolower', $key1->getForeignColumns()) != array_map('strtolower', $key2->getForeignColumns())) { return true; } if ($key1->hasOption('onUpdate') && $key->hasOption('onUpdate')) { if ($key1->getOption('onUpdate') != $key2->getOption('onUpdate')) { return true; } } else { if ($key1->hasOption('onUpdate') != $key2->hasOption('onUpdate')) { return true; } } if ($key1->hasOption('onDelete') && $key2->hasOption('onDelete')) { if ($key1->getOption('onDelete') != $key2->getOption('onDelete')) { return true; } } else { if ($key1->hasOption('onDelete') != $key2->hasOption('onDelete')) { return true; } } return false; }