Example #1
0
 /**
  * Compares tables.
  *
  * @param Schema $source Source schema.
  * @param Schema $target Target schema.
  *
  * @return void
  */
 private function compareTables(Schema $source, Schema $target)
 {
     foreach ($source->tables->compare($target->tables, false) as $pair) {
         if (isset($pair[0]) && isset($pair[1])) {
             $this->compareTable($pair[0], $pair[1]);
         } elseif (!isset($pair[0]) && isset($pair[1])) {
             $this->difference[] = $pair;
             $emptyCollection = new Collection();
             foreach ($emptyCollection->compare($pair[1]->indexes) as $pair2) {
                 $this->difference[] = $pair2;
             }
             $emptyCollection = new Collection();
             foreach ($emptyCollection->compare($pair[1]->triggers) as $pair2) {
                 $this->difference[] = $pair2;
             }
         } else {
             $this->difference[] = $pair;
         }
     }
 }