function plugin_build_copydir(array $params, Phest $phest) { $dir_source = $phest->getSourcePath(); $from_dpath = $dir_source . '/' . $params['from']; $to_dpath = $dir_source . '/' . $params['to']; $phest->add('build', '[copydir] <b>' . $from_dpath . '</b> から <b>' . $to_dpath . '</b> へコピー'); File::copyDir($from_dpath, $to_dpath, true); return true; }
/** * フォルダを削除する * * @param array $params パラメータ * @param string $params.dir 削除対象のフォルダパス (source/ からの相対パス) * @param Phest $phest Phestオブジェクト * @return bool プラグインの成功判定 */ function plugin_build_removedir(array $params, Phest $phest) { if (empty($params['dir'])) { $phest->add('builderror', '[removedir] dirオプションが指定されていません'); return false; } $dir_source = $phest->getSourcePath(); $dpath = $dir_source . '/' . $params['dir']; if (!is_dir($dpath)) { $phest->add('builderror', '[removedir] dir はディレクトリではありません: ' . $dpath); return false; } $phest->add('build', '[removedir] <b>' . $dpath . '</b> を削除しました'); File::removeDir($dpath); return true; }
function plugin_build_concat(array $params, Phest $phest) { $sourcepath = $phest->getSourcePath(); $output_source = ''; $count = 0; foreach ($params['sources'] as $spath) { $spath = $sourcepath . '/' . $spath; if (file_exists($spath)) { $count++; $output_source .= file_get_contents($spath); } else { $phest->add('builderror', '[concat] sources で指定されたファイルが存在しません: ' . $spath); } } $phest->add('build', '[concat] ' . $count . '個のファイルを結合: /<b>' . $params['output'] . '</b>'); File::buildPutFile($sourcepath . '/' . $params['output'], $output_source); return true; }
function plugin_build_copy(array $params, Phest $phest) { global $phest_plugin_copy_list; $output_dir = rtrim($params['outputdir'], '\\/'); $sourcepath = $phest->getSourcePath(); $count = 0; foreach ($params['sources'] as $spath) { $spath = $sourcepath . '/' . $spath; if (file_exists($spath)) { $count++; File::buildCopy($spath, $sourcepath . '/' . $output_dir . '/' . basename($spath)); } else { $phest->add('builderror', '[copy] sources で指定されたファイルが存在しません: ' . $spath); } } $phest->add('build', '[copy] ' . $count . '個のファイルをコピー: /<b>' . $output_dir . '</b>'); return true; }