예제 #1
0
 /**
  * @inheritdoc
  */
 public function getHasChanged($cache)
 {
     $result = parent::getHasChanged($cache);
     if ($result && $this->compiledFileName) {
         @unlink($this->compiledFileName);
         FileHelper::removeDirIfEmpty(dirname($this->compiledFileName));
     }
     return $result;
 }
예제 #2
0
 /**
  * Removes all compiled files in renderer path.
  * @param ViewRenderer $renderer
  */
 protected function unlinkAllCompiledFiles($renderer)
 {
     if (!$this->confirm("Are you want to unlink all php files in '{$renderer->compiledPath}'?", true)) {
         return;
     }
     $this->stdout("Search all php files in '{$renderer->compiledPath}'...\n");
     $dir = Yii::getAlias($renderer->compiledPath);
     $files = FileHelper::findFiles($dir, ['only' => ['/*/*.php']]);
     $this->stdout(Yii::$app->i18n->format("There {n, plural, =0{are no files} =1{is one file} other{are # files}} in '{$renderer->compiledPath}'.\n", ['n' => count($files)], 'en-US'));
     foreach ($files as $file) {
         $this->stdout("Unlink {$file}.\n");
         @unlink($file);
         FileHelper::removeDirIfEmpty(dirname($file));
     }
 }