/** * get difference between tables in databases */ protected function compareTables() { $currentTables = $this->currentDb->getTables(); $lastPublishedTables = $this->publishedDb->getTables(); $this->createTables = array_diff_key($currentTables, $lastPublishedTables); $this->dropTables = array_diff_key($lastPublishedTables, $currentTables); $this->commonTables = array_intersect_key($currentTables, $lastPublishedTables); foreach ($this->createTables as $tblName => $table) { $this->addCreateTable($tblName); } foreach ($this->dropTables as $tblName => $table) { $this->addDropTable($tblName); } }