Пример #1
0
 /**
  * @return Nano_Migrate_ScriptEmpty
  */
 public static function instance()
 {
     if (null == self::$instance) {
         self::$instance = new self();
     }
     return self::$instance;
 }
Пример #2
0
 public function load()
 {
     $queries = $this->path . '/queries.php';
     $script = $this->path . '/script.php';
     if (file_exists($queries)) {
         $sql = null;
         include $queries;
         if (is_array($sql)) {
             $this->queries = $sql;
         }
     }
     if (file_exists($script)) {
         include_once $script;
         $suffix = str_replace('-', '_', baseName($this->path));
         $class = 'Nano_Migrate_Script_' . $suffix;
         if (class_exists($class, false)) {
             $reflection = new ReflectionClass($class);
             if ($reflection->isInstantiable() && $reflection->isSubclassOf('Nano_Migrate_Script')) {
                 $this->script = $reflection->newInstance();
             } else {
                 $this->script = Nano_Migrate_ScriptEmpty::instance();
             }
         } else {
             $this->script = Nano_Migrate_ScriptEmpty::instance();
         }
     } else {
         $this->script = Nano_Migrate_ScriptEmpty::instance();
     }
 }