Ejemplo n.º 1
0
 /**
  * {@inheritdoc}
  */
 public function fileReflection($filename)
 {
     $fileMD5 = $this->files->md5($filename = $this->files->normalizePath($filename));
     $reflection = new ReflectionFile($this->fetchTokens($filename), (array) $this->memory->loadData($fileMD5, self::MEMORY_LOCATION));
     //Let's save to cache
     $this->memory->saveData($fileMD5, $reflection->exportSchema(), static::MEMORY_LOCATION);
     return $reflection;
 }
Ejemplo n.º 2
0
 /**
  * Internal method to fetch all migration filenames.
  *
  * @return array
  */
 private function getFiles()
 {
     $filenames = [];
     foreach ($this->files->getFiles($this->config['directory'], 'php') as $filename) {
         $reflection = new ReflectionFile($this->tokenizer, $filename);
         $definition = explode('_', basename($filename));
         $filenames[$filename] = ['class' => $reflection->getClasses()[0], 'created' => \DateTime::createFromFormat(self::TIMESTAMP_FORMAT, $definition[0] . '_' . $definition[1]), 'name' => str_replace('.php', '', join('_', array_slice($definition, 3)))];
     }
     return $filenames;
 }